shell常用的檔案判斷運算子如下:
-e 檔案是否存在
-f 檔案是否是普通檔案(不是目錄、裝置檔案、鏈結檔案)
-s 表示檔案大小不為0
-d 表示檔案是否是目錄
-b 表示是塊裝置(光碟機、軟盤等)
-c 表示是字元裝置(鍵盤、音效卡等)
-p 表示是管道
-h 表示是符號鏈結
-s 表示是否是socket
-r、-w、-x表示檔案是否有可讀、可寫、可執行許可權(指執行這個測試命令的使用者)
f1 -nt f2 f1是否比f2新(new than)
f1 -ot f2 f1是否比f2舊(old than)
f1 -ef f2 f1和f2是否是相同檔案的硬鏈結
使用!時表示上述結果取反,由於內容較多,這裡不一一枚舉了。下面乙個例子可以作為程式設計參考
myfile="aa.txt
"if [ ! -f $myfile ]; then
echo $myfile"
is not exist
"touch
$myfile
else
echo $myfile"
is exist"fi
if [ ! -s $myfile ]; then
echo
"hello, my master
" >$myfile
else
echo $myfile"
is not null
"fi
shell指令碼學習12 檔案包含
像其他語言一樣,shell 也可以包含外部指令碼,將外部指令碼的內容合併到當前指令碼。shell 中包含指令碼可以使用 filename 或 source filename 兩種方式的效果相同,簡單起見,一般使用點號 但是注意點號 和檔名中間有一空格。例如,建立兩個指令碼,乙個是被呼叫指令碼 sub...
Shell指令碼學習筆記 十 檔案操作
檔案操作 取得目錄內容 lsgetconf arg max 判斷檔案是否存在 建立檔案 建立一般檔案 建立檔案 1 使用轉向輸出 text.txt 2 配合空命令 test.xtx 可以增加script移植性,有時候使用 檔案 會造成語法錯誤 3 建立隱藏檔案 test.txt 4 使用touch命...
Shell學習(12)檔案操作
檔案操作 取得目錄內容 ls getconf arg max 判斷檔案是否存在 建立檔案 建立一般檔案 建立檔案 1 使用轉向輸出 text.txt 2 配合空命令 test.xtx 可以增加script移植性,有時候使用 檔案 會造成語法錯誤 3 建立隱藏檔案 test.txt 4 使用touch...