
Ich muss rekursive Unterordner in einer einzigen Zeile löschen.
Für einen Unterordner:
find folder -name "subfolder" -exec rm -r "{}" \;
oder
find folder -name "subfolder" -type d -exec rm -r "{}" \;
Aber was ist mit mehreren Unterordnern in einer Zeile? (Unterordner1, Unterordner2 oder foo, bar, dummy…)
Antwort1
Was ich tun würde :
find folder -name "subfolder[0-9]*" -exec rm -r {} \;
Verwendung einerGlobus
oder
find folder \( -name 'foo' -o -name 'bar' -o name 'base' \) -exec rm -r {} \;
Antwort2
Der Autor der Frage hat die folgende Lösung vorgeschlagen, die offensichtlich abgeleitet ist vondie Antwort auf SO.
Die Lösung fand ich inPaketüberfluss
find folder \( -name 'foo*' -or -name 'bar' -or -name 'dummy*' \) -exec rm -r {} \;