Shell腳本test命令使用總結(jié)和實(shí)例
Shell中的 test 命令用于檢查某個(gè)條件是否成立,它可以進(jìn)行數(shù)值、字符和文件三個(gè)方面的測(cè)試。
數(shù)值測(cè)試
參數(shù) | 說(shuō)明 |
---|---|
-eq | 等于則為真 |
-ne | 不等于則為真 |
-gt | 大于則為真 |
-ge | 大于等于則為真 |
-lt | 小于則為真 |
-le | 小于等于則為真 |
例如:
num1=100
num2=100
if test $[num1] -eq $[num2]
then
echo 'The two numbers are equal!'
else
echo 'The two numbers are not equal!'
fi
輸出:
The two numbers are equal!
字符串測(cè)試
參數(shù) | 說(shuō)明 |
---|---|
= | 等于則為真 |
!= | 不相等則為真 |
-z 字符串 | 字符串長(zhǎng)度偽則為真 |
-n 字符串 | 字符串長(zhǎng)度不偽則為真 |
例如:
num1=100
num2=100
if test num1=num2
then
echo 'The two strings are equal!'
else
echo 'The two strings are not equal!'
fi
輸出:
The two strings are equal!
文件測(cè)試
參數(shù) | 說(shuō)明 |
---|---|
-e 文件名 | 如果文件存在則為真 |
-r 文件名 | 如果文件存在且可讀則為真 |
-w 文件名 | 如果文件存在且可寫(xiě)則為真 |
-x 文件名 | 如果文件存在且可執(zhí)行則為真 |
-s 文件名 | 如果文件存在且至少有一個(gè)字符則為真 |
-d 文件名 | 如果文件存在且為目錄則為真 |
-f 文件名 | 如果文件存在且為普通文件則為真 |
-c 文件名 | 如果文件存在且為字符型特殊文件則為真 |
-b 文件名 | 如果文件存在且為塊特殊文件則為真 |
例如:
cd /bin
if test -e ./bash
then
echo 'The file already exists!'
else
echo 'The file does not exists!'
fi
輸出:
The file already exists!
另外,Shell還提供了與( ! )、或( -o )、非( -a )三個(gè)邏輯操作符用于將測(cè)試條件連接起來(lái),其優(yōu)先級(jí)為:“!”最高,“-a”次之,“-o”最低。例如:
cd /bin
if test -e ./notFile -o ./bash
then
echo 'One file exists at least!'
else
echo 'Both dose not exists!'
fi
輸出:
One file exists at least!
相關(guān)文章
Shell腳本從文件中逐行讀取內(nèi)容的幾種方法實(shí)例
今天小編就為大家分享一篇關(guān)于Shell腳本從文件中逐行讀取內(nèi)容的幾種方法實(shí)例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03淺談Shell腳本參數(shù)與交互及常見(jiàn)問(wèn)題
本文主要介紹了Shell腳本參數(shù)與交互,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08使用Linux的alternatives命令替換選擇軟件的版本方法
下面小編就為大家?guī)?lái)一篇使用Linux的alternatives命令替換選擇軟件的版本方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05