linux中test命令詳解

2021-06-26 22:31:51 字數 1189 閱讀 8111

測試標誌

代表意義

檔名、檔案型別

-e該檔名是否存在

-f該檔名是否存在且為file

-d該檔名是否存在且為目錄

-b該檔名是否存在且為乙個block

-c該檔名是否存在且為乙個character device裝置

-s該檔名是否存在且為乙個socket檔案

-p該檔名是否存在且為乙個fifo(pipe)檔案

-l該檔名是否存在且為乙個連線檔案

檔案許可權檢測

-r檢測檔名是否存在且具有「可讀」許可權

-w檢測檔名是否存在且具有「可寫」許可權

-x檢測檔名是否存在且具有「可執行」許可權

-u檢測檔名是否存在且具有「suid」許可權

-g檢測檔名是否存在且具有「sgid」許可權

-k檢測檔名是否存在且具有「sticky bit」許可權

-s檢測檔名是否存在且為「非空白檔案」

兩個檔案的比較

-nt(newer than)判斷file1是否比file2新

-ot(older than)判斷file是否比file2舊

-ef判斷file1與file2是否為同乙個檔案,可用在判斷hard link上

數字之間的判定

-eqequal

-nenot equal

-gtgreater than

-ltless than

-gegreater than or equal

-leless than or equal

判斷字串的資料

test -z string

判斷字串是否為0,若為空返回true

test -n string

判斷字串是否為0,若為空返回false

test str1 = str2

判斷str1是否等於str2,若相等,返回true

test str1 != str2

判斷str1是否等於str2,若相等,返回false

多重條件的判斷

-a兩個條件同時成立,eg:test -r file a test -x file,同時成立返回true

-o任何乙個條件成立,eg:test -r file o test -x file,同時成立返回true

!反向狀態,如test!-x file,當file不具有x時,返回true

詳解命令 test

test命令是shell環境中測試條件表示式的實用工具。語法 test 選項 選項 b 檔案 如果檔案為乙個塊特殊檔案,則為真 c 檔案 如果檔案為乙個字元特殊檔案,則為真 d 檔案 如果檔案為乙個目錄,則為真 e 檔案 如果檔案存在,則為真 f 檔案 如果檔案為乙個普通檔案,則為真 g 檔案 如果...

詳解命令 test

test命令是shell環境中測試條件表示式的實用工具。語法 test 選項 選項 b 檔案 如果檔案為乙個塊特殊檔案,則為真 c 檔案 如果檔案為乙個字元特殊檔案,則為真 d 檔案 如果檔案為乙個目錄,則為真 e 檔案 如果檔案存在,則為真 f 檔案 如果檔案為乙個普通檔案,則為真 g 檔案 如果...

test命令詳解

shell中的 test 命令用於檢查某個條件是否成立,它可以進行數值 字元和檔案三個方面的測試。引數 說明 eq 等於則為真 ne 不等於則為真 gt 大於則為真 ge 大於等於則為真 lt 小於則為真 le 小於等於則為真例項 num1 100 num2 100 iftest num1 eq n...