條件測試的語法有兩種
test 條件表示式或
[ 條件表示式 ]注意:中括號「」與條件表示式之間一定要有空格,不然會報錯
字串運算子
運算子說明string
判斷指定的字元是否為空串––
string1=string2
判斷兩個字串string1和string2是否相等––
string1!=string2
判斷兩個字串string1和string2是否不相等––
-n string
判斷string 是否是非空串––
-z string
判斷string 是否是空串
第乙個 單字串 形式 string 只能借助 test 來判斷是否為空串整數測試的語法有兩種:
test num1 op num2或
[ num1 op num2 ]num1 和 num2 表示參與比較的兩個整數,可以是常量,也可以是變數
op 表示運算子
常見整數運算子
運算子說明num1 -eq num2
比較 num1 是否 等於 num2 ,若 等於 就返回0––
num1 -ne num2
比較 num1 是否 不等於 num2 ,若 不等於 則返回0––
num1 -gt num2
比較 num1 是否大於 num2 , 若 大於 則返回0––
num1 -lt num2
比較 num1 是否小於 num2 , 若 小於 則返回0––
num1 -ge num2
比較 num1 是否大於等於 num2 , 若 大於等於 則返回0––
num1 -le num2
比較 num1 是否小於等於 num2 , 若 小於等於 則返回0
以上是針對整數的比較,不能用於比較浮點數什麼的,會報錯檔案測試的語法有兩種:
test op file或
[ op file ]上面語法中,op:表示操作符,file:表示要測試的檔名
常用的檔案操作符
操作符說明-a file
檔案是否存在,如果檔案file存在,則結果為 0––
-b file
文是否存在,且為快檔案。如果檔案file是乙個已經存在的塊檔案,則結果為 0––
-c file
檔案是否存在,且為字元檔案。如果file是乙個已經存在的字元檔案,則結果為 0––
-d file
檔案是否存在,且為目錄。如果檔案file是乙個已經存在的目錄,則結果為 0––
-e file
同 -a 操作符––
-s檔案的長度是否大於 0 或檔案的為非空檔案。如果 file 是乙個非空檔案,則結果為 0––
-f file
檔案存在,並且為常規檔案。如果 file 是乙個已經存在的常規檔案,則結果為 0––
-w file
檔案是否存在且可寫。如果檔案 file 是乙個可寫檔案,則結果為 0––
-l file
檔案是否存在,並且為符號鏈結。如果檔案 file 是乙個已經存在的符號鏈結,則結果為 0––
-u檔案是否設定 suid 位。如果檔案 file 已經設定了 suid 位,則結果位 0––
-r file
檔案是否存在,並且可讀。如果檔案 file 是乙個已經存在的可讀檔案,則結果為 0––
-x file
檔案是否存在,並且可執行。如果檔案 file 是乙個已經存在的可執行檔案,則結果為0––
shell 條件測試 test
shell環境根據命令執行後的返回狀態值 來判斷是否執行成功,當返回值為0時表示成功,否則 非0值 表示失敗或異常。使用專門的測試工具test命令,可對條件進行測試,並根據返回值來判斷條件是否成立 返回值為0表示成立 使用test測試命令時 使用格式 檔案測試 檔案測試指的是根據給定的路徑名稱,判斷...
shell條件測試test
shell條件測試可以通過以下兩種方式 test 引數 測試內容 引數 測試內容 一 測試檔案型別 test e 檔名 測試檔案是否存在 e 檔名 測試檔案是否存在,注意中括號兩邊的空格 test f 檔名 判斷是否為普通檔案 test d 檔名 判斷是否為目錄 test b 檔名 判斷是否為塊裝置...
shell 條件測試語句 test
shell環境根據命令執行後的返回狀態值 來判斷是否執行成功,當返回值為0時表示成功,否則 非0值 表示失敗或異常。使用專門的測試工具test命令,可對條件進行測試,並根據返回值來判斷條件是否成立 返回值為0表示成立 使用test測試命令時 這兩種方式作用完全相同,但是通常使用後者。根據要測試的條件...