Angenommen, die folgende Dateistruktur:
/Parent1/
/Parent1/SubA/
/Parent1/SubB/
...
/Parent2/
/Parent2/SubA/
/Parent2/SubB/
...
Mit welchem Befehl kann ich SubB rekursiv aus jedem übergeordneten Verzeichnis entfernen? Was ich getan habe, ist lange Hand (sehr lahm, aber ich werde es nur einschließen, damit klar ist, was ich versuche zu tun):
rm -rf Parent1/SubB
^1^2^
...
linux
command-line
process91
quelle
quelle
find /SuperParent -name SubB -type d | xargs echo rm -rf
zuerst, um zu prüfen, was ausgeführt werden würde, wenn Sie besorgt sind. Wenn Sie viel zu viele Verzeichnisse haben, wird möglicherweise eine Fehlermeldung angezeigt,find /SuperParent -name SubB -type d | xargs -i rm -rf {}
die Sie ausführen müssen (wobei jeder rm-Befehl einzeln ausgeführt wird)code
find / SuperParent -mindepth 2 -maxdepth 2 -name SubB -type d | xargs rm -rfcode
scheint das Problem zu lösen. Danke für deine Antwort!Wenn es nicht zu viele ParentX gibt:
quelle