使用 Mac 終端刪除目錄中與正規表示式相符的文件

使用 Mac 終端刪除目錄中與正規表示式相符的文件

如何使用 Mac 終端刪除目錄中與給定正規表示式或類似解決方案相符的檔案?

答案1

使用find命令。

尋找所有與正規表示式相符的檔案(遞歸地):find . -type f -regex '/ex/'
尋找與正規表示式相符的所有檔案(遞歸地)並刪除它們:find . -type f -regex '/ex/' -exec rm {} \;

中括號儲存找到的路徑名,反斜線轉義分號,因為它被傳遞給 find;如果沒有逃脫,它就會被貝殼吞噬。如果您對此感到困惑,請閱讀“學習 Bash Shell”的前兩章。

檢查手冊頁以find取得更多選項。還有很多搜尋方法。

答案2

與 jorelli 的答案非常相似。這就是我使用的:

find . -regex '/ex/' -print0 | xargs -0 rm

-print0和參數-0導致 find 輸出一個 char 0 分隔的列表,並且 xargsrm在列表的每個元素中執行命令,因此帶有空格的路徑不是問題。

相關內容