test命令詳解

2021-10-09 18:49:27 字數 1775 閱讀 4973

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

引數 說明

-eq	等於則為真

-ne 不等於則為真

-gt 大於則為真

-ge 大於等於則為真

-lt 小於則為真

-le 小於等於則為真

例項:

num1=100

num2=100

iftest $[num1] -eq $[num2]

then

echo

'兩個數相等!'

else

echo

'兩個數不相等!'

fi

輸出結果:bash test1.sh

兩個數相等!

**中的 執行基本的算數運算,如:

例項

#!/bin/bash

a=5b=6

result=$[a+b]

# 注意等號兩邊不能有空格

echo

"result 為: $result"

結果為:

result 為: 11

引數	說明

= 等於則為真

!= 不相等則為真

-z 字串 字串的長度為零則為真

-n 字串 字串的長度不為零則為真

例項

num1=

"ru1noob"

num2=

"runoob"

iftest

$num1

=$num2

then

echo

'兩個字串相等!'

else

echo

'兩個字串不相等!'

fi

輸出結果:

兩個字串不相等!

引數 說明

-e 檔名	如果檔案存在則為真

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

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

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

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

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

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

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

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

例項:

cd /bin

iftest -e ./bash

then

echo

'檔案已存在!'

else

echo

'檔案不存在!'

fi

輸出結果:

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

例項

cd /bin

iftest -e ./notfile -o -e ./bash

then

echo

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

else

echo

'兩個檔案都不存在'

fi

詳解命令 test

test命令是shell環境中測試條件表示式的實用工具。語法 test 選項 選項 b 檔案 如果檔案為乙個塊特殊檔案,則為真 c 檔案 如果檔案為乙個字元特殊檔案,則為真 d 檔案 如果檔案為乙個目錄,則為真 e 檔案 如果檔案存在,則為真 f 檔案 如果檔案為乙個普通檔案,則為真 g 檔案 如果...

詳解命令 test

test命令是shell環境中測試條件表示式的實用工具。語法 test 選項 選項 b 檔案 如果檔案為乙個塊特殊檔案,則為真 c 檔案 如果檔案為乙個字元特殊檔案,則為真 d 檔案 如果檔案為乙個目錄,則為真 e 檔案 如果檔案存在,則為真 f 檔案 如果檔案為乙個普通檔案,則為真 g 檔案 如果...

詳解命令 test

test命令是shell環境中測試條件表示式的實用工具。語法 test 選項 選項 b 檔案 如果檔案為乙個塊特殊檔案,則為真 c 檔案 如果檔案為乙個字元特殊檔案,則為真 d 檔案 如果檔案為乙個目錄,則為真 e 檔案 如果檔案存在,則為真 f 檔案 如果檔案為乙個普通檔案,則為真 g 檔案 如果...