
Ich möchte einige Ordner aufräumen. Dazu möchte ich alle Ordner löschen, die leer sind oder nur andere Ordner enthalten...
Zuerst versuchte ich
find . -type d -delete
aber dies listet die Unterordner nach den übergeordneten Ordnern auf, sodass ich es mehrere Male ausführen müsste.
Also habe ich versucht, Tac und Rohre zu verwenden
find . -type d | tac | xargs rmdir
Dieses schlägt bei Leerzeichen usw. fehl, also brauche ich eine Maskierung – jetzt stecke ich fest …
Antwort1
find . -type d -depth -exec rmdir {} +
sollte funktionieren, wenn Sie ein halbwegs aktuelles find(1) haben - beachten Sie, dass execplus 1989 hinzugefügt wurde ;-)
Beachten Sie, dass es einen Hinweis gab, dass es möglicherweise nicht standardmäßige Find-Implementierungen gibt, die eine Warnung ausgeben, wenn -depth
nicht als erstes angegeben wurde primary
.