1. 程式人生 > >shell 編程 -- 條件判斷

shell 編程 -- 條件判斷

如果 -s size 裏的 字符串 ron -o 普通 修改

1.按照文件類型進行判斷(常用的)
-b 判斷該文件是否存在
-d 判斷是否存在,並且是否為目錄(是目錄就為真)
-e 判斷該文件是否存在(存在為真)
-f 判斷文件是否存在,並且是否為普通文件(是普通文件為真)
-L 判斷該文件是否存在。並且是否為符號鏈接文件(是符號鏈接文件為真)


2.按照文件權限進行判斷(常用)
註意:這裏的判斷是區分擁有者、所屬群、其他者,只要這三個中有任意一個成立就為真
-r 判斷文件是否存在,並且是否擁有讀寫權限(有讀權限為真)
-w 判斷文件是否存在,並且是否擁有寫權限(有寫權限為真)
-x 判斷文件是否存在,並且是否擁有執行權限(有執行權限為真)


3.兩個文件之間的判斷
文件1 -nt 文件2 判斷文件1的修改時間是否比文件2的新(如果新則為真)
文件1 -ot 文件2 判斷文件1的修改時間是否比文件2的舊(如果舊則為真)
文件1 -ef 文件2 判斷文件1是否和文件2的inode號一致,可以理解為兩個文件是否為同一個文
件(這個判斷用於判斷硬鏈接)


4.兩個整數之間的比較(註意:是整數之間的比較)
整數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(小於等於為真)


5.字符串的判斷(註意:這裏是字符串不是整數判斷)
-z字符串 判斷字符串是否為空(為空返回真)
-n字符串 判斷字符串是否為非空(為非空返回真)
字符串1==字符串2 判斷字符串1是否和字符串2相等(相等返回真)
字符串1!=字符串2 判斷字符串1是否和字符串2不相等(不相等返回真)


6.多重條件判斷
判斷1 -a 判斷2 邏輯與,判斷1和判斷2成立,最終的結果才為真
判斷1 -o 判斷2 邏輯或,判斷1和判斷2有一個成立,最終結果為真
!判斷 邏輯非,使原始的判斷式取反

以上的6種判斷格式可以為[-d 文件名]

shell 編程 -- 條件判斷