按照檔案類型進行判斷:
-b 檔案
判斷該檔案是否存在,并且是否為塊裝置(是塊裝置檔案為真)
-c 檔案
判斷該檔案是否存在,并且是否為字元裝置檔案
-d 檔案
判斷該檔案是否存在,并且是否為目錄檔案
-e 檔案
判斷該檔案是否存在
-f 檔案
判斷該檔案是否存在,并且是否為普通檔案
-L 檔案
判斷該檔案是否存在,并且是否為符号連結檔案
-p 檔案
判斷該檔案是否存在,并且是否為管道檔案
-s 檔案
判斷該檔案是否存在,并且是否為非空
-S 檔案
判斷該檔案是否存在,并且是否為套接字檔案
按照檔案權限進行判斷:
-r 檔案
判斷該檔案是否存在,并且該檔案是否具有讀權限;
-w 檔案
判斷該檔案是否存在,并且該檔案是否具有寫權限;
-x 檔案
判斷該檔案是否存在,并且該檔案是否具有執行權限;
-u 檔案
判斷該檔案是否存在,并且該檔案是否具有suid權限;
-g 檔案
判斷該檔案是否存在,并且該檔案是否具有sgid權限;
-k 檔案
判斷該檔案是否存在,并且該檔案是否具有sbit權限;
兩個檔案之間進行比較:
檔案1 -nt 檔案2
判斷檔案1的修改時間是否比檔案2的新;
檔案1 -ot 檔案2
判斷檔案1的修改時間是否比文伯2的舊;
檔案1 -ef 檔案2
判斷檔案1和檔案2的inode号是否一緻,可以了解為兩個檔案是否為同一檔案。這個判斷用于判斷硬連結是很好的方法。
兩個整數之間進行比較:
整數1 -eq 整數2
判斷整數1是否和整數2相等;
整數1 -ne 整數2
判斷整數1是否和整數2不相等;
整數1 -gt 整數2
判斷整數1是否大于整數2;
整數1 -lt 整數2
判斷整數1是否小于整數2;
整數1 -ge 整數2
判斷整數1是否大于等于整數2;
整數1 -le 整數2
判斷整數1是否小于等于整數2;
字元串的判斷:
-z 字元串
判斷字元串是否為空,為空傳回真;
-n 字元串
判斷字元串是否為非空;
字元串1 == 字元串2
判斷字元串1和字元串2是否相等;
字元串1 != 字元串2
判斷字元串1和字元串2是否不相等;
多重條件判斷:
判斷1 -a 判斷2
邏輯與,判斷1和判斷2都成立,最終的結果才為真
判斷1 -o 判斷2
邏輯或,判斷1和判斷2有一個成立,最終的結果就為真
! 判斷
邏輯非,使原始的判斷式取反
本文轉自limingyu0312 51CTO部落格,原文連結:http://blog.51cto.com/limingyu/1907871,如需轉載請自行聯系原作者