shell中test命令用法說明

2021-10-08 11:01:09 字數 1785 閱讀 4247

參考:

test命令用於檢查某個條件(表示式為真)是否成立,它可以進行數值、字串和檔案三個方面的測試比較。詳情檢視附錄1

test 和 [ 命令

linux 和 unix 的每個版本中都包含 test 命令,該命令還有乙個更常用的別名 —左方括號:"["。test 及其別名通常都可以在 /usr/bin 或 /bin (取決於作業系統版本和**商)中找到。

test expression

[ expression ]

test和[都判斷乙個表示式,然後返回真或假。如果它和 if、while 或 until 命令結合使用,則您可以對程式流進行廣泛的控制。不過,您無需將 test 命令與任何其它結構一起使用;您可以從命令列直接執行它來檢查幾乎任何東西的狀態。

使用 時test 或 [ 均需要乙個表示式,表示式一般是文字、數字或檔案和目錄屬性的比較,並且可以包含變數、常量和運算子。運算子可以是字串運算子、整數運算子、檔案運算子或布林運算子

if

test condition

then

commands

fi

等效於

if

[ condition ]

then

commands

fi

如果condition返回結果為真,則執行commands語句,否則結束

表一 數值比較比較

描述n1 -eq n2

n1是否與n2相等

n1 -ge n2

n1是否大於或等於能n2

n1 -gt n2

n1是否大於n2

n1 -le n2

n1是否小於或等於n2

n1 -lt n2

n1是否小於n2

n1 -ne n2

n1是否不等於n2

表二 字串比較比較

描述str1 = str2

str1是否和str2相同

str1 != str2

str1是否和str2不同

str1 < str2

str1是否比str2小

str1 > str2

str1是否比str2大

-n str1

str1的長度是否非0

-z str1

str1的長度是否為0

表三 檔案比較比較

描述-d file

file是否存在且是乙個目錄

-e file

file 是否存在

-f file

file是否存在且是乙個檔案

-r file

file是否存在且可讀

-s file

file是否存在且非空

-w file

file是否存在且可寫

-x file

file是否存在且可執行

-o file

file是否存在且屬當前使用者所有

-g file

file是否存在且預設組與當前組相同

file1 -nt file2

file1是否比file2新

file1 -ot file2

file是否比file2舊

linux中shell命令test用法和舉例

shell test命令 和 是同乙個命令的不同名稱。原文 test 命令最短的定義可能是評估乙個表示式 如果條件為真,則返回乙個 0 值。如果表示式不為真,則返回乙個大於 0 的值 也可以將其稱為假值。檢查最後所執行命令的狀態的最簡便方法是使用 值。出於演示的目的,本文中的例子全部使用了這個引數。...

linux中shell命令test用法和舉例

shell test命令 和 是同乙個命令的不同名稱。原文 test 命令最短的定義可能是評估乙個表示式 如果條件為真,則返回乙個 0 值。如果表示式不為真,則返回乙個大於 0 的值 也可以將其稱為假值。檢查最後所執行命令的狀態的最簡便方法是使用 值。出於演示的目的,本文中的例子全部使用了這個引數。...

(十)shell語法中的test命令用法

test命令用法。功能 檢查檔案和比較值 1 判斷表示式 if test 表示式為真 if test 表示式為假 test 表示式1 a 表示式2 兩個表示式都為真 test 表示式1 o 表示式2 兩個表示式有乙個為真 2 判斷字串 test n 字串 字串的長度非零 test z 字串 字串的長...