1.字串比較
! 取反
-n str 字串 str 是否不為空
-z str 字串 str 是否為空
str1 = str2 str1是否與 str2 相同
str1 != str2 str1是否與 str2 不同
2.數值大小比較
int1 -eq int2 等於
int1 -le int2 小於等於
int1 -ge int2 大於等於
int1 -lt int2 小於
int1 -gt int2 大於
int1 -ne int2 不等於
3.檔案屬性判斷
-b 是否塊檔案
-c 是否字元檔案
-d 是否乙個目錄
-e 檔案是否存在
-f 是否普通檔案
-g 是否設定了檔案的 sgid 位
-g 檔案歸本組所有
-h 是否符號連線與-l相同
-k 檔案是否設定了的貼上位
-o 是否為本使用者所有
-p 檔案是否為乙個命名管道
-r 檔案是否可讀
-s 檔案的長度是否不為零
-s 是否為套接字檔案
-t fd fd 是否在乙個終端開啟
-u 是否設定了檔案的 suid 位
-w 檔案是否可寫
-x 檔案是否可執行
4.檔案關係比較
expr1 -a expr2 如果 expr1 和 expr2 為真,則為真
expr1 -o expr2 如果 expr1 或 expr2 為真,則為真
file1 -ef file2 file1和file2有同樣的inode號
file1 -nt file2 file1比file2新
file1 -ot file2 file1比file2老
shell中的條件表示式
by francis hao oct 1,2017 本文摘錄自bash的man手冊 條件表示式是由復合命令 或內建命令 test 和 使用的,用於測試檔案屬性和字串或數值比較。表示式形式如下表所示,如果其中的file形式為 dev fd n,那麼將測試檔案描述符n,如果file是 dev stdin...
shell中條件判斷if
a file 如果file存在則為真。b file 如果file存在且是乙個塊特殊檔案則為真。c file 如果file存在且是乙個字特殊檔案則為真。d file 如果file存在且是乙個目錄則為真。e file 如果file存在則為真。f file 如果file存在且是乙個普通檔案則為真。g fi...
shell中if判斷條件
if 的三種條件表示式 ifcommand then if函式 then 命令執行成功,等於返回0 比如grep 找到匹配 執行失敗,返回非0 grep,沒找到匹配 if expression r r r then 表示式結果為真,則返回0,if把0值引向then if test expressio...