Shell中if判斷文件夾或文件是否存在

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
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容