使用test來進行判斷
# test [選項] 文件test -d /Users/zhanghe/desktop/user/shell---------------------示例:#如果該文件是目錄則輸出yes,否則輸出notest -d /Users/zhanghe/desktop/user/shell && echo yes || echo no
選項按照文件類型判斷
-d 判斷文件是否存在,且為目錄-e 判斷文件是否存在-f 判斷文件是否存在,且為普通文件-s 判斷文件是否存在,并且是否為非空文件#示例test -s stu.txt
按照權限判斷
-r 判斷文件是否存在,且是否有讀權限-w 判斷文件是否存在,且是否有寫權限-x 判斷文件是否存在,且是否有執行權限#示例test -w stu.txt
數值比較
-eq 比較兩個數是否相等-ne 比較數1是否與數2不相等-gt 比較數1是否大于數2-lt 比較數1是否小于數2-ge 比較數1是否大于等于數2-le 比較數1是否小于等于數2#示例test 1 -eq 2
字符串比較
-z 判斷字符串是否為空-n 判斷字符串是否非空== 判斷兩個字符串是否相等!= 判斷兩個字符串是否不等#示例test "aa" == "ab"
邏輯判斷
-a 邏輯與-o 邏輯或! 邏輯非#示例test "aa" == "aa" -a "ab" == "aa"
上述得test可以使用[ ]來替代
如:
[ -s stu.txt ]
[ "aa" == "ab" ]