Anleitungen

So löschen Sie Dateien und Verzeichnisse im Linux-Terminal

Die Befehle rm und rmdir entfernen Dateien und Verzeichnisse auf Linux, macOS und anderen Unix-ähnlichen Betriebssystemen. Sie ähneln Befehlen Windows und DOS Deltreo . Diese Befehle sind sehr mächtig und haben viele Optionen.

Es ist wichtig zu beachten, dass Dateien und Verzeichnisse, die mit rm und rmdir gelöscht wurden, nicht in den Papierkorb verschoben werden. Sie werden umgehend von Ihrem Computer gelöscht. Wenn Sie mit diesen Befehlen versehentlich Dateien löschen, können Sie sie nur aus einem Backup wiederherstellen.

So löschen Sie Dateien mit rm

Der einfachste Fall besteht darin, eine einzelne Datei im aktuellen Verzeichnis zu löschen. Geben Sie den Befehl rm, ein Leerzeichen und dann den Namen der Datei ein, die Sie löschen möchten.

rm file_1.txt

Wenn sich die Datei nicht im aktuellen Arbeitsverzeichnis befindet, geben Sie einen Pfad zum Speicherort der Datei an.

rm./Pfad/zu/Datei/Datei/Datei_1.txt

Sie können mehr als einen Dateinamen an rm übergeben. Dadurch werden alle angegebenen Dateien entfernt.

rm Datei_2.txt Datei_3.txt

Platzhalter können verwendet werden, um Gruppen von zu löschenden Dateien auszuwählen. Das Sternchen ( ) steht für mehrere Zeichen und das Sternchen ( ) steht für ein einzelnes Zeichen. Dieser Befehl würde alle PNG-Bilddateien im aktuellen Arbeitsverzeichnis löschen.

rm*.png

Dieser Befehl löscht alle Dateien mit einer einzelnen Zeichenerweiterung. Dies würde beispielsweise File.1 und File.2 entfernen, aber nicht File.12.

rm*.?

Wenn eine Datei schreibgeschützt ist, werden Sie aufgefordert, sie zu löschen. Sie müssen mit Sony antworten und "Enter" drücken.

Um das Risiko der Verwendung des Platzhalterzeichens rm zu verringern, verwenden Sie die Option -i (interaktiv). Dazu müssen Sie das Löschen jeder Datei bestätigen.

rm -i *.dat

Die Option -f (force) ist das Gegenteil der interaktiven Option. Es fragt nicht nach einer Bestätigung, selbst wenn die Dateien schreibgeschützt sind.

rm -f Dateiname

So löschen Sie Verzeichnisse mit rm

Um ein leeres Verzeichnis zu löschen, verwenden Sie die Option -d (Verzeichnis). In Verzeichnisnamen können Sie Platzhalter (* und?) genauso verwenden wie bei Dateinamen.

rm -d Verzeichnis

Wenn mehr als ein Verzeichnisname angegeben wird, werden alle angegebenen leeren Verzeichnisse gelöscht.

rm -d Verzeichnis1 Verzeichnis2 / Pfad / zu / Verzeichnis3

Um nicht leere Verzeichnisse zu entfernen, verwenden Sie die Option -r (rekursiv). Zur Verdeutlichung werden hierdurch Verzeichnisse und alle darin enthaltenen Dateien und Unterverzeichnisse entfernt.

rm -r Verzeichnis1 Verzeichnis2 Verzeichnis3

Wenn ein Verzeichnis oder eine Datei schreibgeschützt ist, werden Sie aufgefordert, das Löschen zu bestätigen. Um nicht leere Verzeichnisse zu entfernen und diese Eingabeaufforderungen zu unterdrücken, verwenden Sie die Optionen -r (rekursiv) und -f (force) zusammen.

rm -rf-Verzeichnis

Hier muss man aufpassen. Ein Fehler mit dem Befehl rm -rf kann zu Datenverlust oder Systemfehlern führen. Es ist gefährlich und Vorsicht ist die beste Politik. Um die Verzeichnisstruktur und die Dateien zu verstehen, die mit dem Befehl rm -rf gelöscht werden, verwenden Sie den Befehl tree.

Verwenden Sie apt-get, um dieses Paket auf Ihrem System zu installieren, wenn Sie Ubuntu oder eine andere Debian-basierte Distribution verwenden. Verwenden Sie bei anderen Linux-Distributionen stattdessen das Paketverwaltungstool Ihrer Linux-Distribution.

sudo apt-get Installationsbaum

Das Ausführen des Befehls tree erzeugt ein leicht verständliches Diagramm der Verzeichnis- und Dateistruktur unter dem Verzeichnis, von dem aus es ausgeführt wird.

arbre

Sie können auch einen Pfad zum Befehl tree angeben, um den Baum aus einem anderen Verzeichnis im Dateisystem zu starten.

Baumpfad / zum / zum / Verzeichnis

Der Befehl rm hat auch die Optionen –one-filesystem, –no-preserve-root, –preserve-root, die jedoch nur erfahrenen Benutzern empfohlen werden. Wenn Sie etwas durcheinander bringen, können Sie versehentlich alle Dateien auf Ihrem System löschen. Weitere Informationen finden Sie auf der Manpage des Befehls.

So löschen Sie Verzeichnisse mit rmdir unter Linux

Es gibt einen weiteren Befehl namens rmdir, mit dem Sie Verzeichnisse löschen können. Der Unterschied zwischen rm und rmdir besteht darin, dass rmdir nur leere Verzeichnisse löschen kann. Es wird niemals die Dateien löschen.

Der einfachste Fall besteht darin, ein einzelnes leeres Verzeichnis zu löschen. Wie bei rm können Sie rmdir mehrere Verzeichnisnamen oder einen Pfad zu einem Verzeichnis übergeben.

Löschen Sie ein einzelnes Verzeichnis im aktuellen Verzeichnis, indem Sie seinen Namen an rmdir übergeben:

rmdir-Verzeichnis

Löschen Sie mehrere Verzeichnisse, indem Sie eine Liste von Namen an rmdir übergeben:

rmdir Verzeichnis1 Verzeichnis2 Verzeichnis3

Löschen Sie ein Verzeichnis, das sich nicht im aktuellen Verzeichnis befindet, indem Sie den vollständigen Pfad dieses Verzeichnisses angeben:

rmdir / Pfad / zum / Verzeichnis

Wenn Sie versuchen, einen nicht leeren Ordner zu löschen, gibt rmdir eine Fehlermeldung aus. Im folgenden Beispiel löscht rmdir im Hintergrund das Client-Verzeichnis, weigert sich jedoch, das Projektverzeichnis zu löschen, da es Dateien enthält. Das Projektverzeichnis bleibt unverändert und die darin enthaltenen Dateien sind intakt.

Wenn rmdir den Fehler "Verzeichnis nicht leer" ausgibt, stoppt es die Verarbeitung der Verzeichnisse, die ihm auf der Befehlszeile übergeben wurden. Wenn Sie gebeten haben, vier Verzeichnisse zu löschen und das erste Verzeichnis Dateien enthält, wird rmdir Ihnen die Fehlermeldung anzeigen und nichts weiter tun. Sie können es erzwingen, diese Fehler mit der Option –ignore-fail-on-non-empty zu ignorieren, um andere Verzeichnisse zu verarbeiten.

Im folgenden Beispiel wurden zwei Datensätze an rmdir übergeben, nämlich work/reports und work/quotes. Die Option –ignore-fail-on-non-empty wurde in den Befehl aufgenommen.

Der Arbeits-/Berichtsordner enthält Dateien, sodass rmdir sie nicht löschen kann. Die Option –ignore-fail-on-non-empty zwingt rmdir, den Fehler zu ignorieren und zum nächsten zu verarbeitenden Ordner zu gehen, der Arbeit / Anführungszeichen ist. Dies ist ein leerer Ordner und rmdir löscht ihn.

Dies war der verwendete Befehl.

rmdir –ignore-fail-on-non-leer work/reports/work/quotes

Sie können die Option -p (parents) verwenden, um ein Verzeichnis und auch seine übergeordneten Verzeichnisse zu löschen. Dieser Trick funktioniert, weil rmdir mit dem Zielverzeichnis beginnt und dann zum übergeordneten Verzeichnis gesichert wird. Dieses Verzeichnis sollte jetzt leer sein, damit es von rmdir gelöscht werden kann, und der Vorgang wird wiederholt, um zu dem Pfad zurückzukehren, der rmdir angegeben wurde.

Im folgenden Beispiel lautet der an rmdir übergebene Befehl:

rmdir -p Arbeit / Rechnungen

Rechnungen und Arbeitsverzeichnisse werden auf Wunsch gelöscht.

Unabhängig davon, ob Sie Bash oder eine andere Shell verwenden, bietet Linux flexible und leistungsstarke Befehle, mit denen Sie Verzeichnisse und Dateien direkt über die Terminalbefehlszeile löschen können.

Manche Leute bevorzugen einen Workflow, der sich um das Terminal dreht. Andere haben vielleicht keine andere Wahl in dieser Angelegenheit. Sie können auf Servern ohne installierte GUI oder in einer Remote-Sitzung auf einem Headless-System wie einem Raspberry Pi arbeiten. Diese Befehle sind perfekt für diese Personengruppe.

Aber welche Art von Arbeitsablauf Sie auch bevorzugen, diese Befehle eignen sich gut, um in Shell-Skripte aufgenommen zu werden. Wenn ein Skript durch einen Cron-Job ausgelöst wird, kann es dazu beitragen, routinemäßige Reinigungsaufgaben wie das Löschen unerwünschter Protokolldateien zu automatisieren.

Wenn Sie nach diesem Anwendungsfall suchen, Erinnere dich an die Macht dieser Befehle , testen Sie alles sorgfältig und bewahren Sie immer ein aktuelles Linux-Backup auf.

Ähnliche Artikel

Hinterlasse eine Antwort

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

Button zurück nach oben