In dieser Anleitung lernen Sie verschiedene Möglichkeiten kennen, wie Sie Dateien und Verzeichnisse unter Linux schnell und einfach über die Befehlszeile löschen können.
Eine der grundlegenden Aufgaben der Dateisystemverwaltung in Linux umfasst das Erstellen, Ändern und Löschen verschiedener Arten von Dateien und Verzeichnissen. Die Kenntnis einiger grundlegender Tools und Konzepte zum Löschen von Dateien ist praktisch und kann Ihnen Zeit sparen.
In diesem Artikel zeigen wir Ihnen verschiedene Möglichkeiten zum Löschen von Dateien und Verzeichnissen in Linux. Wir geben auch kurze Informationen zu den verschiedenen Flags und Optionen, die Sie beim Löschen von Dateien und Verzeichnissen von Ihrer Linux-Station verwenden können.
Dateien mit dem rm-Befehl löschen
Um eine Datei zu löschen, müssen Sie den rm verwenden (remove) Befehl und teilen Sie ihm mit, welche Datei oder Dateien Sie löschen möchten. Es hat die folgende allgemeine Syntax:
rm [OPTIONS] FILENAME
Zum Beispiel, um eine einzelne Datei mit dem Namen file.jpg zu löschen , geben Sie Folgendes in die Befehlszeile ein:
rm file.jpg
Der rm Der Befehl zeigt einen Bestätigungsdialog für schreibgeschützte Dateien an. Andernfalls löscht der Befehl die Datei direkt. Um rm zu erstellen immer vor dem Löschen einer Datei auffordern, können Sie -i verwenden Flagge:
rm -i file.jpg
Der rm Der Befehl in Linux kann auch verwendet werden, um mehr als eine Datei gleichzeitig zu löschen. Umgehen mehrerer durch Leerzeichen getrennter Dateinamen als Argumente für rm , können Sie mehrere Dateien löschen:
rm file1.jpg file2.jpg file3.jpg
Sie können das -f verwenden (erzwingen) Flag, um schreibgeschützte Dateien ohne Rückfrage zu löschen:
rm -f file.jpg
Außerdem muss der rm Der Befehl unterstützt auch reguläre Ausdrücke. Wenn Sie alle drei Dateien (file1.jpg , file2.jpg , und file3.jpg ) können Sie verwenden:
rm file*.jpg
Falls Sie es brauchen, finden Sie hier die Manpage für rm Befehl.
Löschen Sie Dateien mit dem Unlink-Befehl
Die unlink Befehl löscht auch eine bestimmte Datei. Dies ist eine weitere, wenn auch nicht so beliebte Art, eine Datei unter Linux zu löschen.
Sie können den unlink verwenden Befehl, um eine einzelne Datei mit dem Namen file.jpg dauerhaft zu löschen indem Sie Folgendes eingeben:
unlink file.jpg
Sie fragen sich wahrscheinlich, was der Unterschied zwischen rm ist und unlink ?
Vor allem sind beide Befehle ein Wrapper für dieselbe grundlegende Funktion, die ein unlink() ist Systemaufruf. Aber das unlink Der Befehl unterliegt den folgenden Einschränkungen:
- Verzeichnisse konnten nicht gelöscht werden.
- Rekursion nicht möglich.
- Kann nur jeweils ein Argument annehmen.
- Hat keine anderen Optionen als
--helpund--version. - Weniger Plausibilitätsprüfung.
Weitere Informationen zum unlink Befehl unter Linux finden Sie auf der Handbuchseite.
Löschen Sie Verzeichnisse mit dem Befehl rm
Durch Hinzufügen des -r (rekursive) Option zum rm Befehl unter Linux können Sie ein Verzeichnis mitsamt seinem Inhalt (Dateien, Unterverzeichnisse usw.) löschen.
Zum Beispiel, um ein Verzeichnis namens myfiles zu entfernen , geben Sie Folgendes in die Befehlszeile ein:
rm -r myfiles/
Der rm Der Befehl würde Sie auffordern, die Prozedur zu validieren, wenn das angegebene Verzeichnis oder eine darin enthaltene Datei schreibgeschützt ist. So entfernen Sie ein Verzeichnis ohne Bestätigung:
rm -rf myfiles/ Um mehrere Verzeichnisse zu löschen (z. B. myfiles1, myfiles2 und myfiles3), geben Sie rm -rf gefolgt von den Verzeichnisnamen oder Pfaden zu Verzeichnissen, getrennt durch ein Leerzeichen, wie folgt ein:
rm -rf myfiles1/ myfiles2/ myfiles3/ Löschen Sie Verzeichnisse mit dem Befehl rmdir
Hier ist etwas Wichtiges zu beachten:das rmdir Der Befehl wird nur verwendet, wenn leere Verzeichnisse in Linux gelöscht werden. Wenn Sie ein nicht leeres Verzeichnis entfernen müssen, verwenden Sie den rm Befehl.
Wenn ein angegebenes Verzeichnis nicht leer ist, zeigt die Ausgabe einen Fehler wie unten gezeigt an.
rmdir: failed to remove 'myfiles/': Directory not empty
Um ein einzelnes leeres Verzeichnis zu entfernen, geben Sie rmdir ein gefolgt vom Verzeichnisnamen oder Pfad zum Verzeichnis wie folgt:
rmdir myfiles/
Um mehrere Verzeichnisse zu entfernen (zum Beispiel myfiles1 , myfiles2 und myfiles3 ), geben Sie rmdir ein gefolgt von den Verzeichnisnamen oder Pfaden zu Verzeichnissen, getrennt durch ein Leerzeichen, wie folgt:
rmdir myfiles1/ myfiles2/ myfiles3/ Wenn der Befehl Inhalte in einem der aufgelisteten Verzeichnisse findet, überspringt er diese und fährt mit dem nächsten fort.
Mit -p Optionen zum rmdir hinzugefügt Befehl wird jedes der Verzeichnisargumente als Pfadname behandelt, aus dem alle Komponenten entfernt werden, wenn sie bereits leer sind, beginnend mit der letzten Komponente.
Beispielsweise löscht der folgende Befehl beide:das übergeordnete Element myfiles Verzeichnis und dessen Unterverzeichnis subdir .
rmdir -p myfiles/subdir/
Für den Fall, dass Sie es brauchen, hier ist die Manpage für unlink Befehl.
Schlussfolgerung
Inzwischen sollten Sie ein klares Verständnis dafür haben, wie Sie Dateien und Verzeichnisse in Linux von der Befehlszeile aus löschen.
Denken Sie daran, wenn Sie unter Linux eine Datei oder ein Verzeichnis mit rm löschen , unlink , und rmdir , wird es sofort entfernt, anstatt in den Papierkorb verschoben zu werden. Daher müssen Sie bei der Verwendung dieser Befehle vorsichtig sein, da Sie die entfernten Dateien nicht wiederherstellen.
Üben Sie jetzt die in diesem Artikel erwähnten Beispiele, und Sie sollten loslegen können.