條件判斷
條件判斷中,0為真,非0為假
if
if (( $var > 0 ))
如果要比較數值則需用兩個括號表示
否則比較的是詞語順序,也就是 2 > 10 會是真值
if [[ $var == '-i' ]]
如果要比較詞語順序則需用兩個中括號表示
若想比較的是數值則使用兩個括號如上所述
if [[ !$boolean ]]
判斷式為否才成立
if [[ $VAR ]]
如果變數不存在則為偽
if [[ -e "$FILE" ]]
檢查檔案是否存在
$FILE 檔案位置
if [[ -n $VAR ]]
如果字串不為空則為真
if [[ -r "$FILE" ]]
檢查檔案存取權限
$FILE 檔案位置
if [[ -s "$FILE" ]]
如果檔案大小大於0則為真,代表不是空檔案
-s 測試檔案大小
$FILE 檔案位置
if [[ -z $VAR ]]
如果變數為 null 則為真
&&
左邊為 true 時,才會執行右邊的程式
例如:
((1 > 0)) && a=1
如果 1 > 0 為真,則 a = 1
[[ "$1" =~ regular expression ]] && a=1
如果第一個參數匹配後面的正規表達式則 a=1
[[ -n $var ]] && a=1
如果 $var 有值的話,則 a=1
||
左邊為 false 時,才會執行右邊的程式
例如:
((1 < 0)) || a=1
如果 1 < 0 為假,則 a = 1
type -t $command >/dev/null || (do something)
如果 $command 不是一個可執行檔的名稱
則執行 || 後面的程式
Last updated