2016-12-01 66 views
0

我需要檢查文件在Unix中的存在。如果文件存在,那麼我必須從該位置刪除該文件。檢查文件的存在

if (file exists) 
then 
    delete the file 
fi 
+4

爲什麼不直接刪除,如果即'/斌/ RM -f ' –

回答

2

您可以使用

[ -e file ] && rm file 
+0

這可能導致出錯的形式:' rm:無法刪除'文件':是一個目錄' –

2

希望這有助於。

if [ -f /home/mfyounus/test/aaa ]; then 

    rm -f /home/mfyounus/test/aaa 
    echo "File \"/home/mfyounus/test/aaa\" Deleted" 

else 

    echo "File not found" 

fi 
+0

這隻適用於文件是「常規」文件的情況 - 例如,如果它是塊設備,符號鏈接,FIFO或目錄,它將會失敗。 –

0

所以最好做rm -f test 這將忽略不存在的文件和參數,從不提示。

如果你想知道文件是否存在,然後刪除,你可以做

test -f file && { echo "File exists. Deleting it"; rm -f file ; }