shell 邏輯表示式彙總(if,大小比較)

2021-07-10 10:32:24 字數 1115 閱讀 6099

比較字串、判斷檔案是否存在及是否可讀等,通常用」」來表示條件測試

注意:這裡的空格很重要。要確保方括號的空格:空格缺少或位置不對,

if ....; then

....

elif ....; then

....

else

....

fi

命令解釋:

[ -f "somefile" ] :判斷是否是乙個檔案

[ -x "/bin/ls" ] :判斷/bin/ls是否存在並有可執行許可權

[ -n "$var" ] :判斷$var變數是否有值

[ "$a" = "$b" ] :判斷$a和$b是否相等

-r file     使用者可讀為真

-w file     使用者可寫為真

-x file     使用者可執行為真

-f file     檔案為正規檔案為真

-d file     檔案為目錄為真

-c file     檔案為字元特殊檔案為真

-b file     檔案為塊特殊檔案為真

-s file     檔案大小非0時為真

-t file     當檔案描述符(預設為1)指定的裝置為終端時為真

大小比較:

-eq 比較兩個引數是否相等(例如,if [ 2 –eq 5 ])

-ne 比較兩個引數是否不相等

-lt 引數1是否小於引數2

-le 引數1是否小於等於引數2

-gt 引數1是否大於引數2

-ge 引數1是否大於等於引數2

-f 檢查某檔案是否存在(例如,if [ -f "filename" ])

-d 檢查目錄是否存在

-n 當串的長度大於0時為真(串非空)(例如 if [ -n "str1" ])

-z 當串的長度為0時為真(空串) (例如 if [ -z "str1" ])

複雜邏輯判斷:

-a         與 

-o        或

!        非

shell 比較邏輯表示式

a file 如果 file 存在則為真。b file 如果 file 存在且是乙個塊特殊檔案則為真。c file 如果 file 存在且是乙個字特殊檔案則為真。d file 如果 file 存在且是乙個目錄則為真。e file 如果 file 存在則為真。f file 如果 file 存在且是乙個...

shell 四 邏輯表示式

一邏輯操作符 閘電路 說明 學習中,使用中記憶!and 乘法,or是加法練習 root server1 mnt ll total 8 1 root root 11 aug 29 12 29 temp drwxr xr x 4 root root 34 aug 29 12 12 wzj rw r r ...

邏輯表示式

1.比較表示式只能描述1個條件 2.邏輯表示式可以描述多個條件,並且使用邏輯運算子來指定多個條件之間的關係 符號含義 與 ll或 非 邏輯與表示式 邏輯與 由 連線起來的邏輯表示式,只要當兩邊的條件都成立的時候,整個邏輯表示式猜成立,只要有一邊的條件不成立,那麼整個邏輯表示式都不成立 表示式結果 1...