天天看點

把用系統使用者名都存到shell的數組中[支援ksh和bash]

在網上被多次問到,如何把文章中的每一行都存儲到shell的數組中,哈哈,其實隻要合理運用shell的數組、重定向和循環結構實作起來很容易的。

信手寫了一個,但作為例子足夠說明問題了。

這個例子是把系統的使用者名都存儲到shell的數組PASSWD中,并列印出來。

    1 #!/bin/ksh 

    2 #!/bin/bash 

    3 # [email protected] 

    4 ############ 存儲每個使用者名到數組PASSWD中 

    5 # 數組下标初始化 

    6 index=0 

    7 while read LINE 

    8 do 

    9                 PASSWD[$index]=`echo $LINE | awk -F: '{print $1}'` 

10 #             echo $index 

11 #             echo ${PASSWD[$index]} 

12                 let index++ 

13 done < /etc/passwd #要讀取的檔案,生産中可設定為變量 

14 ############ 列印每個資料元素 

15 index=0 

16 while [ $index -lt ${#PASSWD[*]} ] 

17 do 

18                 echo -en ${index}":\t"${PASSWD[$index]}"\n" 

19                 sleep 1 

20                 let index++ 

21 done 

     本文轉自xiaoyuwang 51CTO部落格,原文連結:http://blog.51cto.com/wangxiaoyu/201547,如需轉載請自行聯系原作者