Linux

使用 find 刪除遞歸子文件夾

  • November 26, 2021

我需要在一行中刪除遞歸子文件夾。

對於一個子文件夾:

find folder -name "subfolder" -exec rm -r "{}" \;

或者

find folder -name "subfolder" -type d -exec rm -r "{}" \;

但是在一行中有幾個子文件夾的情況下呢?(子文件夾 1、子文件夾 2 或 foo、bar、dummy…)

我會做什麼:

find folder -name "subfolder[0-9]*" -exec rm -r {} \;

使用球體

或者

find folder \( -name 'foo' -o -name 'bar' -o name 'base' \) -exec rm -r {} \;

該問題的作者提供了以下解決方案,該解決方案顯然來自SO 上的答案

我在stackoverflow中找到了解決方案

find folder \( -name 'foo*' -or -name 'bar' -or -name 'dummy*' \) -exec rm -r {} \;

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