test命令的測試功能

關於某個文件名的"文件類型"的判斷:test  -e  filenameless

-e  判斷該文件名是否存在ip

-f  判斷該文件名是否存在且爲文件(file)字符串

-d  判斷該文件名是否存在且爲目錄(directory)string

-b  判斷該文件名是否存在且爲一個block device設備it

-c  判斷該文件名是否存在且爲一個character device設備pip

-S  判斷該文件名是否存在且爲一個Socket文件test

-p  判斷該文件名是否存在且爲一個FIFO(pipe)文件file

-L  判斷該文件名是否存在且爲一個鏈接文件權限

 

關於某個文件名的權限檢測:test  -r  filename數據

-r  檢測該文件名是否存在且具備可讀的權限

-w  檢測該文件名是否存在且具備可寫的權限

-x  檢測該文件名是否存在且具備可執行的權限

-u  檢測該文件名是否存在且具備"SUID"的屬性

-g  檢測該文件名是否存在且具備"SGID"的屬性

-k  檢測該文件名是否存在且具備"Sticky bit"的屬性

-s  檢測該文件名是否存在且爲非空白文件

 

連個文件之間的比較:test  file1 -nt  file2

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

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

-ef       判斷file1和file2是否爲同一個文件,可用在hard link的斷定上 。

 

關於兩個整數之間的斷定:test  n1  -eq  n2

-eq  兩數值相等(equal)

-ne  兩數值不等(not equal)

-gt   n1大於n2(greater than)

-lt    n1小於n(less than)

-ge  n1大於等於n2(greater than or equal)

-le   n1小於等於n2(less than or equal)

 

斷定字符串的數據:

test  -z  string  斷定字符串是否爲0,若string爲空字符串,則爲true

test  -n  string  斷定字符創是否非爲0,若String不爲空字符串,則爲true

test   str1=str2    斷定字符串str1是否等於str2,若相等,則爲true

test   str1!=st2       斷定字符創Str1是否不等於str2,若不相等,則爲true

相關文章
相關標籤/搜索