當我們檢查檔案是否存在,或者檢查檔案的屬性時,可以使用test命令。例如檢測/abc是否存在,可以用: test -e /abc && echo "exist" || echo "not exist"
test後面可跟的引數比較多,我們可以用man命令來檢視各個引數的功能。
下面實現,使用者輸入乙個檔名,我們判斷:這個檔案是否存在,若不存在則輸出 "file not exist」 ,並中斷程式;若這個檔案存在,則判斷它是檔案還是目錄 ;最後判斷這個檔案的許可權。
**如下:
#!/bin/bash
path=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export path
# 1. 讓使用者輸入使用者名稱
echo -e "please input a filename "
read -p "input a filename:" filename
test -z $filename && echo "you must input a filename." && exit 0
# 2. 判斷檔案是否存在
test ! -e $filename && echo " file do not exist" && exit 0
# 3.開始判斷檔案型別
test -f $filename && filetype="regulare file"
test -d $filename && filetype="directory"
test -r $filename && perm="readable"
test -w $filename && perm="$perm writable"
test -x $filename && perm="$perm executable"
# 4.開始輸出資訊
echo "the filename:$filename is a $filetype"
echo "and the permissions are :$perm"
利用 test 命令的測試功能
利用 test 命令的測試功能 當我要檢測系統上面某些檔案或者是相關的屬性時,利用 test 這個命令來工作真是好用得不得了,舉例來說,我要檢查 home oracle zy是否存在時,使用 test e home oracle zy 執行結果並不會顯示任何資訊,但最後我們可以透過 或 及 來展現整...
test命令的用法
1 字串比較 string1 string 2 如果兩個字串相同,則結果為真 string1 string2 如果兩個字串不相同,則結果為真 n string 如果字串不為空,則結果為真 z string 如果字串為null,則結果為真 sample bin sh sa hello sb hello...
實用的test命令
1 判斷表示式 if test 表示式為真 if test 表示式為假 test 表示式1 a 表示式2 兩個表示式都為真 test 表示式1 o 表示式2 兩個表示式有乙個為真 2 判斷字串 test n 字串 字串的長度非零 test z 字串 字串的長度為零 test 字串1 字串2 字串相等...