使用 find 刪除遞歸子資料夾

使用 find 刪除遞歸子資料夾

我需要在一行中刪除遞歸子資料夾。

對於一個子資料夾:

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

或者

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

但是如果一行中有多個子資料夾呢? (子資料夾 1、子資料夾 2 或 foo、bar、dummy...)

答案1

我會做什麼:

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

用一個

或者

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

答案2

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

我找到了解決方案堆疊溢位

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

相關內容