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

Wie lösche ich ein Verzeichnis und einen Ordner in Linux?

Haben Sie Probleme beim Entfernen eines Ordners oder Verzeichnisses in Ubuntu?

Dieser Leitfaden ist für Sie.


Das Löschen eines Verzeichnisses oder Ordners in Linux, das entweder leer ist oder Unterverzeichnisse mit Dateien enthält, ist wichtig, um Speicherplatz auf Ihrem System freizugeben, um mehr Dateien zu speichern oder zusätzliche Pakete zu installieren.

Hier bei LinuxAPT helfen wir unseren Kunden im Rahmen unserer Server Management Services regelmäßig bei der Durchführung von Aufgaben im Zusammenhang mit Ubuntu.

In diesem Zusammenhang werden wir verschiedene Möglichkeiten untersuchen, wie Sie ein Verzeichnis unter Linux löschen können.


Wie lösche ich ein Verzeichnis oder einen Ordner mit dem Befehl rmdir ?

Der Befehl rmdir, Akronyme für „Verzeichnis entfernen“, ist ein Befehlszeilentool, das zum Löschen leerer Verzeichnisse verwendet wird. Die Operation ist erfolgreich, wenn und nur wenn das Verzeichnis leer ist.

Die Syntax zum Löschen eines Verzeichnisses lautet wie folgt:

$ sudo rmdir name_of_directory

Um beispielsweise ein leeres Verzeichnis mit dem Namen „home_directory“ zu entfernen, führen Sie den folgenden Befehl aus:

$ sudo rmdir home_directory

Wenn das Verzeichnis nicht leer ist, wird auf dem Bildschirm ein Fehler wie abgebildet angezeigt:

rmdir: failed to remove 'home_directory': Directory not empty

Der Fehler weist darauf hin, dass das Verzeichnis entweder Dateien oder Ordner oder beides enthält.


Wie entferne ich ein Verzeichnis mit dem Befehl rm ?

Der Befehl rm ist eine Abkürzung für „remove“. Es wird zum Löschen sowohl leerer als auch nicht leerer Verzeichnisse verwendet.

Der Befehl rm wird normalerweise zum Entfernen von Dateien unter Linux verwendet. Sie können jedoch einige Argumente übergeben, die Ihnen beim Löschen von Verzeichnissen helfen können. Um beispielsweise ein Verzeichnis rekursiv zu entfernen (das Verzeichnis zusammen mit seinem Inhalt zu entfernen), verwenden Sie die rekursive Option -r (-R oder --recursive) wie unten gezeigt;

$ sudo rm -r home_directory

Wenn ein Verzeichnis schreibgeschützt ist, werden Sie gefragt, ob Sie mit dem Löschen der Dateien innerhalb des Verzeichnisses und des gesamten Verzeichnisses fortfahren möchten. Um Ihnen den Ärger und die Unannehmlichkeiten zu ersparen, ständig auf solche Eingabeaufforderungen zu stoßen, fügen Sie die Option -f hinzu, um das Löschen ohne Aufforderung zu erzwingen.

$ sudo rm -rf home_directory

Darüber hinaus können Sie mehrere Verzeichnisse auf einmal in einem einzigen Befehl löschen, wie im folgenden Befehl gezeigt. Der Befehl löscht alle Verzeichnisse und ihre Unterverzeichnisse, ohne zum Löschen aufzufordern.

$ sudo rm -rf home_directory1 home_directory2 home_directory3

Um mehr Vorsicht walten zu lassen, können Sie die Option -i verwenden, die zum Löschen der Verzeichnisse und Unterverzeichnisse auffordert. Wie wir jedoch bereits gesehen haben, kann dies ziemlich ärgerlich sein, insbesondere wenn Sie mehrere Unterordner und Dateien haben.

Um diese Unannehmlichkeit zu beheben, verwenden Sie das Flag -I, um Sie nur einmal aufzufordern:

$ sudo rm -rI home_directory/

Wenn Sie y für 'Ja' drücken, entfernt der Befehl alle Unterordner und Dateien im Verzeichnis, ohne weitere Aufforderungen.


Um ein leeres Verzeichnis zu entfernen, übergeben Sie die Option -d wie unten gezeigt.

$ sudo  rm -d home_directory

Wie verwende ich den Find-Befehl?

Der Find-Befehl ist ein Befehlszeilentool, das Benutzern hilft, nach Dateien sowie Verzeichnissen basierend auf bestimmten Suchkriterien/Mustern oder Ausdrücken zu suchen. Zusätzlich kann der Befehl verwendet werden, um nach Verzeichnissen zu suchen und diese basierend auf den angegebenen Suchkriterien zu löschen.


Um beispielsweise ein Verzeichnis mit dem Namen „home_directory“ im aktuellen Verzeichnis zu löschen, führen Sie den folgenden Befehl aus.

$ sudo find . -type d -name "home_directory" -exec rm -rf {} +

Lassen Sie uns die Parameter im Befehl aufschlüsseln:

( . ) - Dies bezeichnet das Verzeichnis, in dem die Suchoperation ausgeführt wird. Wenn Sie die Suche in Ihrem aktuellen Verzeichnis durchführen möchten, verwenden Sie das Punktzeichen (.)

-type d - Dies stellt die Suchoperation so ein, dass nur nach Verzeichnissen gesucht wird.

-name - Dies gibt den Namen des Verzeichnisses an.

-exec rm -rf - Dies löscht alle Verzeichnisse und deren Inhalt.

{} +- - Dies hängt alle gefundenen Dateien am Ende des rm-Befehls an.


Nehmen wir ein anderes Beispiel:


Wie entferne ich ein leeres Verzeichnis oder einen leeren Ordner?

Wenn Sie alle leeren Verzeichnisse entfernen möchten, verwenden Sie den folgenden Befehl:

$ sudo find. -type d -empty -delete

Lassen Sie uns dies auch aufschlüsseln;

. - Sucht rekursiv im aktuellen Arbeitsverzeichnis

-type d - Dies hält die Suche nur in Verzeichnissen

-empty – Dies beschränkt das Suchmuster nur auf leere Verzeichnisse

-delete - Dies löscht alle gefundenen leeren Verzeichnisse einschließlich Unterverzeichnissen.



Linux
  1. So öffnen und schließen Sie Verzeichnisse im Linux-Terminal

  2. So benennen Sie ein Verzeichnis in Linux um

  3. So löschen Sie Dateien und Verzeichnisse in Linux über die Befehlszeile

  4. Linux-rm-Befehl

  5. Linux:Wie man einen Befehl in einem bestimmten Verzeichnis ausführt

So verwenden Sie den cd-Befehl unter Linux

So verschieben Sie ein Verzeichnis unter Linux

Verzeichnis in Linux entfernen – So löschen Sie einen Ordner von der Befehlszeile aus

So installieren und verwenden Sie den fd-Befehl unter Linux

So zählen Sie Dateien im Verzeichnis unter Linux

Linux /-Ordner und /root-Ordner