it-swarm.com.de

Wie lösche ich ein nicht leeres Verzeichnis in Terminal?

Wie lösche ich das folgende Verzeichnis?

Ich tippte:

rmdir lampp

Dieser Fehler tritt auf:

rmdir: failed to remove `lampp': Directory not empty

Gibt es einen Befehl zum Löschen aller Dateien im Verzeichnis und zum Löschen des Verzeichnisordners?

623
naveen

Verwenden Sie den folgenden Befehl:

rm -rf lampp

Alle Dateien und Ordner im Verzeichnis lampp werden gelöscht.

Falls der Benutzer keine Berechtigung zum Löschen des Ordners hat:

Fügen Sie am Anfang des Befehls Sudo hinzu:

Sudo rm -rf folderName

Andernfalls wird Ihnen ohne Sudo die Erlaubnis verweigert. Es wird empfohlen, -f beim Löschen eines Verzeichnisses nicht zu verwenden:

Sudo rm -r folderName

Hinweis: Dies setzt voraus, dass Sie sich bereits auf derselben Ebene des Ordners befinden, den Sie im Terminal löschen möchten. Andernfalls gilt Folgendes:

Sudo rm -r /path/to/folderName

Zu Ihrer Information: Sie können die Buchstaben -f, -r, -v verwenden:

  • -f = Nicht vorhandene Dateien ignorieren, niemals auffordern
  • -r = zum rekursiven Entfernen von Verzeichnissen und deren Inhalten
  • -v = um zu erklären, was getan wird
870
rm -R lampp

Bei einem solchen rekursiven Befehl müssen Sie jedoch vorsichtig sein, da es leicht möglich ist, versehentlich viel mehr zu löschen, als Sie beabsichtigt haben.

Es ist eine gute Idee, immer zu überprüfen, in welchem ​​Verzeichnis Sie sich befinden und ob Sie den Befehl richtig eingegeben haben, bevor Sie die Eingabetaste drücken.

Sicherere Version

rm -R -i lampp

Das Hinzufügen von -i macht es ein wenig sicherer, da es Sie bei jedem Löschen auffordert. Wenn Sie jedoch viele Dateien löschen, ist dies nicht sehr praktisch. Trotzdem können Sie dies zuerst versuchen.

Anmerkung zu -f Option:

Viele Leute schlagen vor, -f zu verwenden (es zu -Rf oder -rf zu kombinieren) und behaupten, dass lästige Eingabeaufforderungen beseitigt werden. Im Normalfall benötigen Sie es jedoch nicht, und durch die Verwendung werden einige Probleme unterdrückt, von denen Sie wahrscheinlich wissen möchten . Wenn Sie es verwenden, werden Sie nicht gewarnt, wenn Ihre Argumente ein nicht existierendes Verzeichnis oder eine nicht existierende Datei enthalten: rm wird einfach nichts löschen. Versuchen Sie es in der Regel zuerst ohne den -f: Wenn es Probleme mit Ihren Argumenten gibt, werden Sie feststellen. Wenn Sie zu viele Eingabeaufforderungen zu Dateien ohne Schreibzugriff erhalten, können Sie dies mit -f versuchen. Alternativ können Sie den Befehl von einem Benutzer (oder dem Superuser, der Sudo verwendet) ausführen, der über die vollständigen Berechtigungen für die zu löschenden Dateien und Verzeichnisse verfügt, um diese Eingabeaufforderungen zu verhindern.

94
thomasrutter

Es gibt viele Möglichkeiten, ein Verzeichnis über den CLI-Modus zu löschen. Es kommt darauf an, wie Sie sich wohlfühlen.

_rm -rvf /path/to/directory  
_
  • _-r_ = Verzeichnisse und deren Inhalt rekursiv entfernen
  • _-v_ = erklären, was getan wird
  • _-f_ = Nicht vorhandene Dateien ignorieren, niemals auffordern

Wenn Sie neu in Linux sind, verwenden Sie die Manpages der Befehle ( man rm ) für mehr Optionen und mehr Genauigkeit.

24
papseddy