shell條件測試test

2022-06-25 18:18:09 字數 1605 閱讀 8301

shell條件測試可以通過以下兩種方式:

test   引數    測試內容

[ 引數  測試內容 ]

一、測試檔案型別:

test  -e   檔名          (測試檔案是否存在)

[ -e  檔名 ]                測試檔案是否存在,注意中括號兩邊的空格

test -f   檔名             判斷是否為普通檔案

test -d   檔名            判斷是否為目錄

test -b   檔名            判斷是否為塊裝置檔案

test -c   檔名            判斷是否為字元裝置檔案

二、測試檔案許可權:

test -r  檔名        判斷檔案是否又讀許可權

test -w  檔名       判斷檔案是否又寫許可權

test -x  檔名        判斷檔案是否有執行許可權

test -s  檔名        判斷檔案是否為非空白,有內容為真

三、兩個檔案比較:

[ file1 -nt file2 ]     file1是否比file2更新

[ file1 -ot file2 ]     file1是否比file2舊

[ file1 -et file2 ]     fie1與file2是否是鏈結檔案

四、兩個陣列之間判斷:

[ n1 eq n2 ]       n1和n2是否相等

[ n1 ne n2 ]       n1和n2是否不等

[ n1 gt n2 ]       n1是否大於n2

[ n1 lt n2 ]        n1是否小於n2

[ n1 ge n2 ]       n1大於等於n2

[ n1 le n2 ]        n1小於等於n2

五、字串判斷:

[ -z  字串 ]     判斷字串是否為空

[ 字串1 == 字串2]   判斷字串1是否等於字串2

[ 字串1 != 字串2]   判斷字串1是否不等於字串2

六、乙個簡單案例:

#!/bin/bash

read -p "

please input a dir:

"dir

if [ ! -e $dir

]then

echo

"filename is not exist

"exit 1fi

if [ ! -d $dir

]then

echo

"please input a dir

"exit 1fi

if [ -e $dir

]then

for i in $(ls $dir

)

doecho

$i

done

fi

shell 條件測試 test

shell環境根據命令執行後的返回狀態值 來判斷是否執行成功,當返回值為0時表示成功,否則 非0值 表示失敗或異常。使用專門的測試工具test命令,可對條件進行測試,並根據返回值來判斷條件是否成立 返回值為0表示成立 使用test測試命令時 使用格式 檔案測試 檔案測試指的是根據給定的路徑名稱,判斷...

shell 條件測試語句 test

shell環境根據命令執行後的返回狀態值 來判斷是否執行成功,當返回值為0時表示成功,否則 非0值 表示失敗或異常。使用專門的測試工具test命令,可對條件進行測試,並根據返回值來判斷條件是否成立 返回值為0表示成立 使用test測試命令時 這兩種方式作用完全相同,但是通常使用後者。根據要測試的條件...

Shell 條件測試(test)基礎語法

條件測試的語法有兩種 test 條件表示式 或 條件表示式 注意 中括號 與條件表示式之間一定要有空格,不然會報錯 字串運算子 運算子說明string 判斷指定的字元是否為空串 string1 string2 判斷兩個字串string1和string2是否相等 string1 string2 判斷兩...