Unix-Befehl zum Löschen von zwei Ordnern gleichzeitig?

21

Was ist der Unix-Befehl, um zwei Ordner gleichzeitig zu löschen? Verwenden rm -rf?

Funk-meiden
quelle

Antworten:

28

Ja:

rm -rf /path/to/folder1 /other/folder/in/different/place

Das '-f' ist nicht obligatorisch, wenn Sie in jede Datei und jedes Verzeichnis schreiben können oder wenn es Ihnen nichts ausmacht, viele Fragen zu stellen. Die Verzeichnisse werden nacheinander gelöscht, aber beide werden als Ergebnis eines einzelnen Befehls gelöscht.

Jonathan Leffler
quelle
1
Ich weiß nicht , warum ich nicht nur versuchte diesen ...
21

In bash gibt es eine Möglichkeit, eine Liste von Argumenten in geschweiften Klammern einzufügen:

rm -rf /path/to/{folder1,folder2}
will run
rm -rf /path/to/folder1 /path/to/folder2

Es kann überall eingefügt werden:

rm -rf /{folder1,folder2}/subfolder
will run
rm -rf /folder1/subfolder /folder2/subfolder
kenny
quelle
5
Es heißt "Shell-Erweiterung", wenn jemand es nachschlagen möchte.
Sirex
so heißt es also! Ich habe versucht, es zu suchen, konnte aber nicht einmal ein gutes Suchkriterium bilden.
Kenny
Der Teilabschnitt, der in Klammern Expansion des Materials beschreibt , {…}ist Verstrebung Expansion ; Dies ist der erste Schritt, der im Abschnitt zu Shell-Erweiterungen im Allgemeinen aufgeführt ist, da er zuerst ausgeführt wird.
Jonathan Leffler
6

Wenn Sie möchten, dass die Löschung tatsächlich gleichzeitig erfolgt, was schneller sein kann, wenn sie sich auf verschiedenen Datenträgern befinden, aber wahrscheinlich langsamer, wenn sie sich auf demselben Datenträger befinden:

rm -rf /path/to/folder1 &
rm -rf /other/folder/in/different/place
Thomas Padron-McCarthy
quelle
guter punkt, obwohl ich mehr nach einer schnelleren (lazier) möglichkeit zum löschen von zwei ordnern suchte