shell雜記2

junwind發表於2021-05-06
字串比較   ==  !=   >  <   
[ $a == $b ]
-n "$string"   是否不空    [ -n "$a" ]
-z "$string"   是否空

for 變數 in 列表; do
    迴圈體
done
for i in 1 2 3 4 5 6 7 8 9 10; do     for i in `seq 1 10`;do
    xxx
done
{1..100}
seq [起步 [步長]] 結束    seq 1 2 100   seq 2 2 100
ls /etc  也生成了一個列表

declare -i sum=0  宣告一個整型變數
declare -x  宣告為環境變數

算數計算:
let i=$[$i+1]
sum=$[$sum+$i]

let sum+=$i
let i+=1   let i++
let i-=1   let i--
++i   --i    
*=   /=  %=  

練習:

1. 傳遞一個引數(單個字元就行)給指令碼,如果引數為q,就退出指令碼;否則就顯示使用者的引數;
2. 傳遞一個引數(單個字元就行)給指令碼,如果引數為q/Q/quit/Quit,就退出指令碼;否則就顯示使用者的引數;
    #一起或判斷
    #正則匹配  
3. 計算1~100的和
4. 向當前系統上的每個使用者問好
5. 依次向/etc/passwd中的每個使用者問好,並顯示對方的shell
6. 只向預設shell為bash的使用者問好, 並統計該使用者數
7. 新增10個使用者user1~user10,密碼同使用者名稱,使用者不存在才新增
8. 接受一個引數,add新增使用者user1~user10, del刪除使用者user1~user10;其他就退出
9. 計算100以內所有能被3整除的正整數的和;
10. 計算100以內所有奇數的和以及所有偶數的和;分別顯示之;
本作品採用《CC 協議》,轉載必須註明作者和本文連結
六月的風