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

bash - entfernt alle Verzeichnisse (und Inhalte), aber keine Dateien in pwd

Ich habe das hier irgendwo gefunden:

rm -r */

Scheint der einfachste Weg zu gehen. Bei Ihrem Beispiel müssten Sie jeden Fall bestätigen, wenn Sie 5 Dateien haben, ist es in Ordnung, aber bei größeren Dateistrukturen ist ein interaktiver Modus nicht der richtige Weg ... Nur als Vorschlag, wenn es wichtige Informationen sind, machen Sie eine sichern...


Nein, das würde Ihnen "fehlender Operand" geben, da Sie nichts angegeben haben. Einfügen eines * würde auch nach Dateien fragen.

Ich würde versuchen:

find -mindepth 1 -maxdepth 1 -type d -exec rm -r {} \;

Die mindepth 1 schließt . aus aus den Ergebnissen die maxdepth 1 schließt den Versuch aus, dies unter den Verzeichnissen zu tun, die ohnehin gelöscht werden (daher eine Warnung). Aber in der Praxis könnten Sie sie beide weglassen, wenn Sie zustimmen, ein paar "unschuldige" Warnungen zu haben.


Verwenden Sie

rm -rf ./*/

Das vermeidet den interaktiven Modus und löscht nur Verzeichnisse in Ihrem lokalen Verzeichnis.


Linux
  1. Vergleichen Sie Verzeichnisse, aber nicht den Inhalt von Dateien?

  2. Wie man alle Dateien und Verzeichnisse rekursiv auflistet

  3. Benennen Sie Dateien und Verzeichnisse unter ubuntu /bash rekursiv um

  4. Entfernen Sie das Git-Repository, aber behalten Sie alle Dateien

  5. Wie kann ich PHPStorm und alle zugehörigen Dateien unter Ubuntu 13.04 vollständig entfernen?

So entfernen Sie Verzeichnisse und Dateien unter Linux

So entfernen Sie Dateien und Verzeichnisse mit der Linux-Befehlszeile

So entfernen Sie Dateien und Verzeichnisse unter Linux

So entfernen Sie Dateien und Verzeichnisse auf einem Linux-Terminal

So führen Sie eine Grep-Suche für alle Dateien und in allen Verzeichnissen durch

Erteilen Sie Ausführungsberechtigungen für Verzeichnisse, aber nicht für Dateien