if 比較的字符用法
-e 判斷對(duì)象是否存在
-d 判斷對(duì)象是否存在,并且為目錄
-f 判斷對(duì)象是否存在,并且為常規(guī)文件
-L 判斷對(duì)象是否存在,并且為符號(hào)鏈接
-h 判斷對(duì)象是否存在,并且為軟鏈接
-s 判斷對(duì)象是否存在,并且長(zhǎng)度不為0
-r 判斷對(duì)象是否存在,并且可讀
-w 判斷對(duì)象是否存在,并且可寫(xiě)
-x 判斷對(duì)象是否存在,并且可執(zhí)行
-O 判斷對(duì)象是否存在,并且屬于當(dāng)前用戶
-G 判斷對(duì)象是否存在,并且屬于當(dāng)前用戶組
-nt 判斷file1是否比f(wàn)ile2新 [ "/data/file1" -nt "/data/file2" ]
-ot 判斷file1是否比f(wàn)ile2舊 [ "/data/file1" -ot "/data/file2" ]
-eq //等于
-ne //不等于
-gt //大于
-lt //小于
-ge //大于等于
-le //小于等于
在if中多次判斷
|| 單方成立;
&& 雙方都成立表達(dá)式。
if判斷的幾個(gè)實(shí)例
文件夾不存在則創(chuàng)建
if [ ! -d "/data/" ];then
mkdir /data
else
echo "文件夾已經(jīng)存在"
fi
文件存在則刪除
if [ ! -f "/data/filename" ];then
echo "文件不存在"
else
rm -f /data/filename
fi
判斷文件夾是否存在
if [ -d "/data/" ];then
echo "文件夾存在"
else
echo "文件夾不存在"
fi
判斷文件是否存在
if [ -f "/data/filename" ];then
echo "文件存在"
else
echo "文件不存在"
fi