rm
Erscheinungsbild
rm - remove
Beschreibung
rm löscht Dateien
- auch komplette Verzeichnisse
- Vorsicht
Dateien, die im Terminal mit dem Befehl rm gelöscht werden, landen nicht im Papierkorb
Installation
rm ist Teil des Paket Coreutils, das auf jedem Linux-System installiert sein sollte
Aufruf
rm [OPTION] DATEI[EN]
Optionen
Unix | GNU | Parameter | Beschreibung |
---|---|---|---|
-i | --interactive | vor dem Löschen eine Nachfrage | |
--preserve-root | nicht rekursiv auf „/“ arbeiten | ||
--no-preserve-root | „/“ nicht besonders behandeln | ||
--one-file-system | beim rekursiven Entfernen einer Verzeichnishierarchie die Verzeichnisse überspringen, die sich auf einem anderen Gerät als der Parameter befinden | ||
-v | --verbose | durchgeführte Tätigkeiten erklären | |
-r -R |
--recursive | Verzeichnisse und deren Inhalte rekursiv entfernen | |
-f | --force | keine Nachfrage beim Löschen |
Parameter
Umgebungsvariablen
Exit-Status
Anwendung
Eine einzelne Datei löschen
rm datei
Mehrere Dateien löschen
rm datei1 datei2 datei3
Alle Dateien und Unterordner im angegebenen Ordner löschen
rm -r Ordnername/*
Alle Dateien und Unterordner inklusive des Ordners selbst löschen
rm -r Ordnername
Dateien mit bestimmten Bezeichnungen im Namen löschen
rm *datei*
Beispiele
Linux bietet verschiedene Möglichkeiten, Dateien und Verzeichnisse basierend auf Dateinamenmustern, Zeit, Größe, Eigentümerschaft, Berechtigungen oder Sicherheitsanforderungen zu entfernen
- Datei ohne Bestätigung löschen
rm -f my.txt
- Alle Dateien mit einer bestimmten Erweiterung löschen
rm *.log
- Alle Dateien, die mit einem bestimmten Präfix beginnen, löschen
rm temp.*
- Ein leeres Verzeichnis löschen (entspricht rmdir leeres_ver)
rm -d leeres_ver
- Ein nicht leeres Verzeichnis löschen
rm -r nicht_leeres_ver
- Alle Dateien in einem Verzeichnis löschen, das Verzeichnis jedoch beibehalten
rm -r mein_ver/*
- Alles außer my.txt und my_dir entfernen
rm -r !(my.txt|my_dir)
- Alle versteckten Dateien aus dem aktuellen Verzeichnis entfernen
rm .[^.]*
- Eine Datei entfernen, die mit einem Sonderzeichen beginnt (z. B. „-“)
rm ./-file.txt
- Alle Dateien finden und entfernen, die älter als 7 Tage sind
find . -type f -mtime +7 -delete
- Dateien finden und entfernen, auf die innerhalb der letzten 24 Stunden zugegriffen wurde
find . -type f -atime -1 -delete
- Alle Null-Byte-Dateien finden und entfernen
find . -type f -empty -delete
- Alle leeren Verzeichnisse finden und entfernen
find . -type d -empty -delete
- Dateien finden und entfernen, die größer als 100 MB sind
find . -type f -size +100M -delete
- Dateien suchen und entfernen, die dem Benutzer „peter“ gehören
find . -type f -user peter -delete
- Dateien mit Berechtigung 777 suchen und entfernen
find . -type f -perm 0777 -delete
- Nicht leere Verzeichnisse entfernen
find . -type d -name „pattern“ -exec rm -r {} +
- Datei anhand ihrer Inode-Nummer (12345) entfernen
find . -inum 12345 -exec rm -f{} +
- Dateien mit gesetztem Setuid-Bit entfernen
find . -type f -perm /4000 -exec rm -f {} +
- Die 5 größten Dateien finden und entfernen (wenn Dateinamen keine Leerzeichen enthalten)
find . -type f -exec du -b {} + | sort-nr head -5 | awk '{print $2}' | xargs rm
- Alle symbolischen Links suchen und entfernen (defekt oder gültig)
find . -type l -delete
- Alle defekten symbolischen Links suchen und entfernen
find . -xtype l -delete
- Eine einzelne Datei entfernen (kann nicht mehrere Dateien verarbeiten)
unlink file.txt
- Eine Datei sicher entfernen, indem der Inhalt mehrmals überschrieben wird
srm file.txt
- Eine Datei mehrmals überschreiben und entfernen
shred -u file.txt
Problembehebung
Anhang
Siehe auch
Dokumentation
Man-Page
Info-Pages
Links
Projekt
Weblinks