Shell教程 Shell test 命令

2021-08-21 21:54:23 字數 1604 閱讀 2046

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教程一 Shell教程

開啟文字編輯器 可以使用 vi vim 命令來建立檔案 新建乙個檔案 test.sh,擴充套件名為 sh sh代表shell 副檔名並不影響指令碼執行,見名知意就好,如果你用 php 寫 shell 指令碼,副檔名就用 php 好了 bin bash echo hello world 是乙個約定的標...

Shell教程 Shell 傳遞引數

我們可以在執行 shell 指令碼時,向指令碼傳遞引數,指令碼內獲取引數的格式為 n。n代表乙個數字,1 為執行指令碼的第乙個引數,2 為執行指令碼的第二個引數,以此類推 以下例項我們向指令碼傳遞三個引數,並分別輸出,其中 0為執行的檔名 bin bash author 菜鳥教程 url www.r...

Shell 簡單教程

bin bash echo hello world 該檔案的作用是在控制台輸出 hello world echo 命令用於向視窗輸出文字。是乙個約定的標記,它告訴系統這個指令碼需要什麼直譯器來執行,即使用哪一種 shell。linux 的 shell 種類眾多,常見的有 在一般情況下,人們並不區分 ...