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
--help
und--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.