shell程式設計 判斷條件

2022-02-19 03:59:50 字數 2080 閱讀 3586

shell程式設計中有兩種形式進行對判斷條件進行測試:

形式一:test

形式二:[    ]

舉個小例子說明其用法及其注意事項:

例子:判斷檔案 "new.txt" 是否存在,存在現實「exist', 不存在現實」not  exitst"

test -e new.txt && echo "exist" || echo "not exist" 

[ -e new.txt ] && echo "exist" || echo "not exist"

執行結果:

實現細節說明:當一次執行很多命令式&&、 ||很有用處,它們是從前往後依次執行。

對於&&:當前面執行條件正確時,執行&&之後的,錯誤就停住了

對於||:當前面的執行條件錯誤時,執行||之後的,正確就停住了。

因此根據&&、||的特性可以對條件作出乙個模式「條件 && 執行1|| 執行2」。當條件為真時執行1;當為假時「條件&&執行1」絕對為假,因此執行2

注意事項:

下面把判斷條件列舉下:

下面整個案例實戰一把:

1.提示使用者輸入檔名

2.判斷檔名是否存在。若不存在,提示「檔案不存在」,退出程式;否則繼續執行

3.判斷檔名是檔案還是目錄

4.判斷檔名的許可權(r w x)

#!bin/bash

read -p "

input the filename:

"filename

test -z "

you must input a filename.

" && exit 0

#判斷是否存在

test ! -e $filename && echo

"the file $filename do not exist.

" && exit 0

#判斷檔名型別

test -f $filename && filetype="

rugulre file

"test -d $filename && filetype="

directory

"#判斷檔案執行許可權

test -r $filename && perm="

readable

"test -w $filename && perm="

writable

"test -x $filename && perm="

execuate

"#輸出結論

echo

"the file $filename is a $filetype

"echo

"and the permission is: $perm

"

Shell 程式設計中條件判斷命令

shell 指令碼程式設計中會廣泛使用 或 test 命令判斷真假。在一些系統上這兩個命令的作用是相同的。為了增強可讀性,當使用 命令時,我們還會使用符號 來結尾。在使用 命令時,命令和檢查條件之間必須留出空格。可以使用的條件型別歸為 3 類 字串比較 算術和 檔案測試 字串比較 結果string1...

shell指令碼程式設計之條件判斷

1 shell指令碼學習 2 比較兩個數字大小 2 linux 中清空或刪除大檔案內容的五種方法 3 shell 清空檔案內容 整數測試 字元測試 檔案測試1 expression 命令測試 2 expression 關鍵字測試 3 test expression eq 測試兩個整數是否相等 相等為...

Shell條件判斷

b file 若檔案存在且是乙個塊特殊檔案,則為真 c file 若檔案存在且是乙個字元特殊檔案,則為真 d file 若檔案存在且是乙個目錄,則為真 e file 若檔案存在,則為真 f file 若檔案存在且是乙個規則檔案,則為真 g file 若檔案存在且設定了sgid位的值,則為真 h fi...