Shell中的內建命令 test

2021-10-02 19:41:48 字數 1247 閱讀 4129

比較

描述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

檢查str的長度是否為非0

-z str

檢查str的長度是否為0

比較描述

-d file

是否存在並為乙個目錄

-e file

是否存在

-f file

是否存在並為乙個檔案

-r file

是否存在並可讀

-s file

是否存在且非空

-w file

是否存在並可寫

-x file

是否存在並執行

-o file

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

-g file

是否存在並預設組與當前使用者相同

file1 -nt file2

file1是否比file2

file1 -ot file2

file1是否比file2

shell中的test命令

test是shell中的內建命令,用來檢測某個條件是否成立,test命令通常和if語句一起使用 test命令通常可以在數值 字串 文字這三個方面進行檢測 test命令可以簡寫為,用法 expression 比較 描述n1 eq n2 n1和n2是否相等 n1 ge n2 n1是否大於等於n2是否相等...

shell內建命令test單雙括號的區別

1 單括號test命令要對變數進行單詞分離,當變數值包含空白符時,要用引號將變數括起來 而雙括號的test命令不會對變數進行單詞分離。以下情況分為變數為單個單詞,含有空格的片語。root www yujia echo name hello root www yujia name hello root...

shell基礎命令 test命令

test 相當於test命令 判斷a和b的值是否相等 test a b echo yes echo no a b echo yes echo no 等於 不等於 eq等於 ne不等於 le小於等於 lt小於 ge大於等於 gt大於 a的值為1 b的值為2 root rhel8 mnt a b ech...