Shell程式設計中的test

2021-10-04 20:48:25 字數 1604 閱讀 2987

shell中的 test 命令用於檢查某個條件是否成立,它可以進行數值、字元和檔案三個方面的測試。

引數說明

-eq等於則為真

-ne不等於則為真

-gt大於則為真

-ge大於等於則為真

-lt小於則為真

-le小於等於則為真

例項演示:

num1=100

num2=100

if test $[num1] -eq $[num2]

then

echo '兩個數相等!'

else

echo '兩個數不相等!'

fi

輸出結果:

兩個數相等!
**中的 執行基本的算數運算,如:

#!/bin/bash

a=5b=6

result=$[a+b] # 注意等號兩邊不能有空格

echo "result 為: $result"

結果為:

result 為: 11
引數說明=

等於則為真

!=不相等則為真

-z 字串

字串的長度為零則為真

-n 字串

字串的長度不為零則為真

例項演示:

num1="ru1noob"

num2="runoob"

if test $num1 = $num2

then

echo '兩個字串相等!'

else

echo '兩個字串不相等!'

fi

輸出結果:

兩個字串不相等!
引數

說明-e 檔名

如果檔案存在則為真

-r 檔名

如果檔案存在且可讀則為真

-w 檔名

如果檔案存在且可寫則為真

-x 檔名

如果檔案存在且可執行則為真

-s 檔名

如果檔案存在且至少有乙個字元則為真

-d 檔名

如果檔案存在且為目錄則為真

-f 檔名

如果檔案存在且為普通檔案則為真

-c 檔名

如果檔案存在且為字元型特殊檔案則為真

-b 檔名

如果檔案存在且為塊特殊檔案則為真

例項演示:

cd /bin

if test -e ./bash

then

echo '檔案已存在!'

else

echo '檔案不存在!'

fi

輸出結果:

檔案已存在!
另外,shell還提供了與( -a )、或( -o )、非( ! )三個邏輯操作符用於將測試條件連線起來,其優先順序為:"!"最高,"-a"次之,"-o"最低。例如:

cd /bin

if test -e ./notfile -o -e ./bash

then

echo '至少有乙個檔案存在!'

else

echo '兩個檔案都不存在'

fi

輸出結果:

至少有乙個檔案存在!

shell中的test命令

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

shell程式設計 之 test命令

shell程式設計裡的測試test命令基本可以分為3種資料型別,每種都不一樣。個人更傾向於理解為條件語句的寫法規則,就是test加條件加判斷語句。基本可以分為6個判斷 eq等於,ne不等於,gt大於,lt小於,ge大於等於,le小於等於 例項 a 1 b 2 if test a eq b 如果a等於...

Shell中的內建命令 test

比較 描述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 檢查...