當(dāng)做以下測(cè)試的時(shí)候?yàn)榱烁庇^,您可以在用&& echo “true” || echo “false”如: #test -r file && echo “true” || echo “false”
1.字符串判斷
-n string 判斷字符串是否為非0,若為空字符串,返回false,不空則為true;
-z string 判斷字符串是否為0,若為空字符串,返回true;
string1 = string2 判斷兩字符是否相等,若相等返回true;
string1 != string2 判斷兩字符串不相等,若相等返回false;
2.整數(shù)判斷
integer1 -eq integer2 判斷兩個(gè)整數(shù)是否相等
integer1 -ge integer2 判斷integer1是否大于等于integer2
integer1 -gt integer2 判斷interger1是否大于integer2
integer1 -le integer2 判斷interger1是否小于等于integer2
integer1 -lt integer2 判斷interger1是否小于integer2
integer1 -ne integer2 判斷interger1不等于integer2,若不等則為true
3.判斷倆個(gè)文件
file1 -ef file2 判斷文件file1和file2是否是同一個(gè)文件,主要通過(guò)inode號(hào)來(lái)判斷
file1 -nt file2 判斷文件file1是否比文件file2新
file1 -ot file2 判斷文件file1是否比文件file2舊
4.文件判斷
-b file 判斷文件是否為塊設(shè)備
-c file 判斷文件是否為字符character special設(shè)備
-d file 判斷文件是否為一個(gè)目錄
-e file 判斷該文件是否存在
-f file 判斷是否問(wèn)文件
-g file 判斷該文件是否具有SGID 的屬性?
-L file 判斷該文件是否為一個(gè)鏈接的文檔?
-S file 判斷該文件是否為一個(gè)socket文檔?
-p file 該文件名是否為一個(gè) FIFO (pipe) 文件?
5.文件的權(quán)限判斷
-r file 判斷對(duì)文件是否具有讀權(quán)限?
-w file 判斷對(duì)文件是否具有寫權(quán)限?
-x file 判斷對(duì)文件時(shí)候具有執(zhí)行權(quán)限?
6.多重條件判斷
-a(and的縮寫)兩狀況同時(shí)成立 列如: test -r file -a -x file 判斷文件file是否同時(shí)具有讀執(zhí)行權(quán)限,返回true,否則false;
-o(or的縮寫)兩個(gè)條件只要成立一個(gè)就返回true;