bash中如何實現條件判斷?
條件測試類型:
整數測試
字符測試
文件測試
條件測試表達式
[EXPRESSION] 命令測試法
` EXPRESSION` 關鍵字測試法
test EXPRESSION
整數比較:
-eq:是否相等
-ne:是否不等
-gt:是否大於
-lt:是否小於
-ge:大於或等於
-le:小於或等於
命令的邏輯關係
邏輯與:&&-->第一個爲假時,第二個不做判斷;
邏輯或:||
變量名稱:只能包含字母、數字和下劃線,不能以數字開頭;
不應該跟系統已有的變量名重複,不然會覆蓋掉;
最好見名知意
條件判斷:
if 判斷語句;then
語句...
fi
if 判斷語句;then
語句1
語句2
...
else
...
...
fi
if 判斷語句;then
語句1
...
elif
語句
...
else
...
fi
shell中如何進行算術運算
1.let 算術表達式
let c=$A+$B
2.$[算術表達式]
c=$[$A+$B]
3.$((算術表達式))
c=$(($A+$B))
4.expr
c=`expr $A + $B`
exit:退出腳本
文件測試:
-e FILE :測試文件是否存在
-f FILE :測試是否爲普通文件
-d ... :測試指定路徑是否爲目錄
-r :測試當前用戶對指定文件是否有讀的權限
-w :測試當前用戶對指定文件是否有寫的權限
-x :測試當前用戶對指定文件是否有執行的權限
列:[ -e /et/inittab ]
測試腳本語法:
bash -n 腳本
bash -x 腳本:單步測試
bash變量類型:
本地變量,環境變量
位置變量:$1,$2,$3...shift[數量]輪替
特殊變量:
$?:上條命令的執行狀態
$#:參數的個數
$*:參數列表
$@:參數列表