Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

rm - Dateien löschen

&pagelevel(4)&pagelevel

(remove directory entries)


rm löscht den Eintrag einer oder mehrerer Dateien im Dateiverzeichnis. Sie können Einträge aber nur löschen, wenn Sie für das Dateiverzeichnis, in dem die Datei steht, das Schreibrecht haben.


Syntax


rm[ option] datei...

Keine Option angegeben

Wenn Sie für datei das Schreibrecht haben, löscht rm den Eintrag ohne Warnung!
Wenn Sie für datei kein Schreibrecht haben und die Standard-Eingabe eine Datensichtstation ist, werden die Zugriffsrechte ausgegeben und rm fragt, ob datei gelöscht werden soll. Nur wenn Sie bestätigen, wird der Eintrag gelöscht; anderenfalls bleibt er erhalten. Wenn die Standard-Eingabe keine Datensichtstation ist, wird der Eintrag ohne Rückfrage gelöscht.

Optionen

-f

Die Einträge werden ohne Rückfrage gelöscht. Wenn Sie kein Schreibrecht für das Dateiverzeichnis haben, werden Dateien nicht gelöscht.

-i

rm fragt für jede Datei und, wenn die Option -r gesetzt ist, für jedes Dateiverzeichnis, ob sie bzw. es gelöscht werden soll.
Die Abfrage erfolgt auch, wenn die Option -f gesetzt ist oder wenn die Standard-Eingabekeine Datensichtstation ist.

-r

Sie können für datei ein Dateiverzeichnis angeben. rm gibt dann nicht, wie normalerweise, eine Fehlermeldung aus. rm löscht rekursiv den gesamten Inhalt des angegebenen Dateiverzeichnisses ebenso wie das Dateiverzeichnis selbst.
Das übergeordnete Dateiverzeichnis (..) kann nicht gelöscht werden. Symbolische Verweise werden bei dieser Option nicht weiter verfolgt.
Löschen eines nicht leeren und schreibgeschützten Dateiverzeichnisses ist nicht möglich (auch nicht mit der Option -f). In diesem Fall wird eine Fehlermeldung ausgegeben.

-R

analog zu -r.

datei

Name der Datei, die gelöscht werden soll. Wenn Sie die Option -r angegeben haben, kann datei auch ein Dateiverzeichnis sein. Sie können mehrere Dateien bzw. Dateiverzeichnisse angeben.

Wenn Sie eine Datei angeben, auf die es mehrere Verweise gibt, wird lediglich ein Verweis gelöscht, die Datei selbst bleibt vorhanden (der Verweiszähler wird um 1 herabgesetzt).

Nur wenn ein Eintrag der letzte Verweis auf eine Datei war, wird die Datei gelöscht.

Für das Dateiverzeichnis, in dem die Datei steht, brauchen Sie das Schreibrecht. Für die Datei selbst brauchen Sie jedoch weder das Lese- noch das Schreibrecht, um sie zu löschen.

Internationale Umgebung

Die folgenden Umgebungsvariablen beeinflussen die Ausführung des Kommandos rm:

LANG

Gibt einen Standardwert für die Variablen für die internationale Umgebung an, die nicht gesetzt oder Null sind. Ist LANG nicht gesetzt oder Null, wird der entsprechende Standardwert der internationalen Umgebung verwendet. Enthält eine der Internationalisierungsvariablen eine ungültige Einstellung, verhält sich das Kommando so, als sei keine der Variablen definiert worden.

LC_ALL

Ist diese Variable auf einen Wert gesetzt, d. h. ist sie nicht leer, überschreibt dieser Wert die Werte aller übrigen Internationalisierungsvariablen.

LC_COLLATE

Legt die internationale Umgebung für das Verhalten von Bereichen, Äquivalenzklassen und Zeicheneinheiten in erweiterten regulären Ausdrücken für ja/nein-Abfragen fest.

LC_CTYPE

Legt die internationale Umgebung für die Interpretation der Byte-Folgen eines Datentexts als Zeichen fest (z.B. Singlebytezeichen im Unterschied zu Mehrbytezeichen in Argumenten) sowie das Verhalten von Zeichenklassen innerhalb von erweiterten regulären Ausdrücken für ja/nein-Abfragen.

LC_MESSAGES

Legt die internationale Umgebung für Format und Inhalt der Diagnosemeldungen fest, die in die Standardfehlerausgabe geschrieben werden.

NLSPATH

Legt den Pfad der Meldungsdateien für LC_MESSAGES fest.

Beispiel 1

Löschen aller Dateien, die auf .prog enden, mit Abfrage:

$ rm -i *.prog 
ablauf.prog:? (y/n) y
code.prog:? (y/n) yuppie
eingabe.prog:? (y/n) n
zufall.prog:? (y/n) nein
a.prog:? (y/n) morgen
$

Die Verweise auf die Dateien ablauf.prog und code.prog werden gelöscht, die übrigen bleiben bestehen.

Beispiel 2

Löschen des Dateiverzeichnisses norm mit allen Dateien und Unterverzeichnissen.

$ rm -r norm

Siehe auch

rmdir