Bash

從文件夾 recursivley 中刪除所有 zip 文件

  • August 30, 2020

我正在嘗試從文件夾/mnt/drive1/temp及其子文件夾 recursivley 中刪除所有 zip 文件。

我知道這裡不正確的命令可能會造成災難性的後果,所以想檢查一下我的格式是否正確,到目前為止我已經……

find /mnt/drive/temp -type f -name '*.zip' -delete

這個命令會達到我想要的嗎?

如果您省略該-delete選項,find將列印出與您指定的測試條件匹配的所有文件的列表。這是檢查您是否擷取了正確文件的好方法,尤其是在您刪除它們之前。一旦確定文件是正確的,附加-delete選項並執行命令。


從語法上講,您的命令看起來是正確的,但可能存在拼寫錯誤。您已find跟隨路徑 (’/mnt/drive/temp’)。您還在問題中提到了“/mnt/drive1/temp”,這是一條不同的路徑。這是我指的可能的錯字。

跟著路徑,你有一系列的測試。-type f將查找正常文件,-name '*.zip'並將查找以 .zip 副檔名結尾的文件。單引號可防止 shell 擴展 ‘*’ 字元,這是正確的做法。

如上所述,首先在沒有-delete選項的情況下進行“試執行”。然後,查看輸出並確認文件正確。滿意後,繼續刪除文件。

引用自:https://unix.stackexchange.com/questions/607057