GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So entfernen Sie Ordner mit einem bestimmten Namen

Wenn das Zielverzeichnis leer ist, verwenden Sie find, filtern Sie nur nach Verzeichnissen, filtern Sie nach Namen, führen Sie rmdir:

aus
find . -type d -name a -exec rmdir {} \;

Wenn Sie seinen Inhalt rekursiv löschen möchten, ersetzen Sie -exec rmdir {} \; mit -delete oder -prune -exec rm -rf {} \; . Andere Antworten enthalten Details zu diesen Versionen, schreiben sie auch gut.


Verwenden Sie find für den Namen "a" und führen Sie rm aus, um die nach Ihren Wünschen benannten wie folgt zu entfernen:

find . -name a -exec rm -rf {} \;

Testen Sie es zuerst mit ls to list:

find . -name a -exec ls {} \;

Um sicherzustellen, dass nur Verzeichnisse und keine einfachen Dateien entfernt werden, verwenden Sie das Argument „-type d“ (wie in den Kommentaren vorgeschlagen):

find . -name a -type d -exec rm -rf {} \;

Das "{}" ist eine Substitution für jede gefundene Datei "a" - der exec-Befehl wird gegen jede durch Substitution ausgeführt.


Dies funktioniert auch - es entfernt alle Ordner mit dem Namen "a" und deren Inhalt:

rm -rf `find . -type d -name a`

Linux
  1. So prüfen Sie Berechtigungen mit dem Befehl find

  2. So finden und entfernen Sie doppelte Fotos in Linux

  3. So finden Sie Dateien mit dem fd-Befehl in Linux

  4. Wie finde ich alle Dateien/Ordner mit 777-Berechtigung in Linux?

  5. So löschen Sie eine Datei mit diesem Namen unter Linux:-]???????q

So finden Sie installierte Anwendungen mit installierter Größe in Linux

So entfernen Sie Dateien mit einer bestimmten Erweiterung in Linux

So finden Sie Dateien mit dem fd-Befehl in Linux

So finden Sie den Prozessnamen anhand seiner PID

So finden Sie Ordner in Linux

Wie lösche ich mehrere Ordner parallel?