Befehl "rm"

Zweck

Entfernt (Link aufheben) Dateien oder Verzeichnisse.

Syntax

RM [  -f ] [  -r ] [  -R ] [  -i ] [  -e ] Datei ...

Beschreibung

Der Befehl rm entfernt die Einträge für den angegebenen Parameter Datei aus einem Verzeichnis. Wenn ein Eintrag der letzte Link zu einer Datei ist, wird die Datei gelöscht. Wenn Sie keine Schreibberechtigung für eine Datei haben und die Standardeingabe ein Terminal ist, werden Sie aufgefordert, den Dateinamen einzugeben und zu bestätigen, dass Sie die Datei löschen möchten. Wenn Sie eineny(für ja), wird die Datei gelöscht. Geben Sie ein anderes Zeichen ein und die Datei wird nicht gelöscht. Sie benötigen keine Lese- oder Schreibberechtigung für die Datei, die Sie entfernen möchten. Sie müssen jedoch Schreibberechtigung für das Verzeichnis haben, das die Datei enthält.

Wenn es sich bei der Datei um einen symbolischen Link handelt, wird der Link entfernt, aber die Datei oder das Verzeichnis, auf die bzw. das sich der symbolische Link bezieht, bleibt erhalten. Sie benötigen keine Schreibberechtigung, um einen symbolischen Link zu löschen, wenn Sie Schreibberechtigung für das Verzeichnis haben.

Wenn eine der Dateien.(Punkt) oder..(Punkt, Punkt) werden als Basisnamensteil des Parameters Datei angegeben. Der Befehl RM schreibt eine Diagnosenachricht in die Standardfehlerausgabe und führt mit diesen Parametern nichts mehr aus.

Der Befehl rm schreibt eine Aufforderung in die Standardfehlerausgabe und liest eine Zeile aus der Standardeingabe, wenn das Flag -f nicht angegeben wird, und wenn entweder der Parameter Datei keine Schreibberechtigung hat und die Standardeingabe eine Workstation ist, oder das Flag -i angegeben wird. Wenn die Antwort nicht positiv ist, verarbeitet der Befehl rm die aktuelle Datei nicht mehr und fährt mit der nächsten Datei fort.

Die Dateien anderer Benutzer können nicht entfernt werden, wenn das Sticky Bit des Verzeichnisses festgelegt ist und das Verzeichnis nicht dem Benutzer gehört.

Hinweis: Der Befehl rm unterstützt den Parameter - (Gedankenstrich, Gedankenstrich) als Begrenzer, der das Ende der Flags angibt.

Der Versuch, eine Datei oder ein Verzeichnis zu entfernen, die für den Server der NFS Version 4 exportiert wurden, schlägt mit einer Nachricht fehl, in der darauf hingewiesen wird, dass die Ressource ausgelastet ist. Der Export der Datei oder des Verzeichnisses für NFS Version 4 muss aufgehoben werden, bevor die Datei bzw. das Verzeichnis entfernt werden kann.

Flags

Element Beschreibung
-E Zeigt eine Nachricht an, nachdem jede Datei gelöscht wurde.
-F Vor dem Entfernen einer schreibgeschützten Datei wird keine Systemanfrage gestellt. Zeigt keine Fehlermeldung an bzw. gibt keinen Fehlerstatus zurück, wenn eine angegebene Datei nicht vorhanden ist. Wenn die Flags -f und -i angegeben sind, wird das zuletzt angegebene Flag wirksam.
-i Vor dem Löschen jeder Datei wird eine Systemanfrage gestellt. Wenn Sie die Flags -i und -r zusammen verwenden, gibt der Befehl rm vor dem Löschen von Verzeichnissen ebenfalls eine Systemanfrage aus. Wenn die Flags -i und -f angegeben sind, wird das zuletzt angegebene Flag wirksam.
Element Beschreibung
-r Ermöglicht das rekursive Entfernen von Verzeichnissen und deren Inhalten, wenn der Parameter Datei ein Verzeichnis ist. Dieses Flag entspricht dem Flag -R.
-R Ermöglicht das rekursive Entfernen von Verzeichnissen und deren Inhalten, wenn der Parameter Datei ein Verzeichnis ist. Dieses Flag entspricht dem Flag -R.

Exitstatus

Dieser Befehl gibt die folgenden Exitwerte zurück:

Element Beschreibung
0 Wenn das Flag -f nicht angegeben wurde, wurden alle benannten Verzeichniseinträge entfernt. Andernfalls wurden alle vorhandenen benannten Verzeichniseinträge entfernt.
>0 Es ist ein Fehler aufgetreten.

Sicherheit

Achtung RBAC-Benutzer und vertrauenswürdige AIX®: Dieser Befehl kann privilegierte Operationen durchführen. Privilegierte Operationen können nur von privilegierten Benutzern ausgeführt werden. Weitere Informationen zu Berechtigungen und Autorisierungen finden Sie im Abschnitt "Privileged Command Database" in der Veröffentlichung Security. Eine Liste der Privilegien und Berechtigungen für diesen Befehl finden Sie in den Beschreibungen des Befehls lssecattr und des Unterbefehls getcmdattr.

Beispiele

  1. Geben Sie Folgendes ein, um eine Datei zu löschen:
    rm myfile
    Wenn ein weiterer Link zu dieser Datei vorhanden ist, bleibt die Datei unter diesem Namen, aber der Namemyfilewird entfernt. Wennmyfileist der einzige Link, die Datei selbst wird gelöscht.
  2. Geben Sie Folgendes ein, um eine Datei zu löschen, ohne zuvor eine Bestätigungsaufforderung zu erhalten:
    rm  -f core
    Es wird keine Sicherheitsabfrage ausgegeben, bevor der Befehl rm -f versucht, die Datei namenscore. Es wird jedoch eine Fehlernachricht angezeigt, wenn diecoreDatei ist schreibgeschützt und Sie sind nicht der Eigner der Datei oder Sie haben keine Rootberechtigung. Keine Fehlermeldung wird angezeigt, wenn der Befehl rm -f versucht, nicht vorhandene Dateien zu entfernen.
  3. Geben Sie Folgendes ein, um Dateien einzeln zu löschen:
    rm  -i mydir/*
    Geben Sie nach jedem angezeigten Dateinamen Folgendes ein:yum die Datei zu löschen, oder drücken Sie die Eingabetaste, um sie beizubehalten.
  4. Geben Sie Folgendes ein, um eine Verzeichnisstruktur zu löschen:
    rm -ir manual
    Dieser Befehl entfernt rekursiv den Inhalt aller Unterverzeichnisse desmanualVerzeichnis, in dem Sie zum Entfernen der einzelnen Dateien aufgefordert werden, und entfernt dann diemanualVerzeichnis selbst, z. B.:
    You:  rm -ir manual
    System: rm: Select files in directory manual? Enter y for yes.
    You:  y
    System: rm: Select files in directory manual/draft1? Enter y for yes.
    You:  y
    System: rm: Remove manual/draft1?
    You:  y
    System: rm: Remove manual/draft1/chapter1?
    You:  y
    System: rm: Remove manual/draft1/chapter2?
    You:  y
    System: rm: Select files in directory manual/draft2? Enter y for yes.
    You:  y
    System: rm: Remove manual/draft2?
    You:  y
    System: rm: Remove manual?
    You:  y
    Hier fragt der Befehl RM zuerst, ob er diemanualVerzeichnis. Weil diemanualVerzeichnis enthält Verzeichnisse, fordert der Befehl RM als Nächstes die Berechtigung für die Suche anmanual/draft1Dateien, die gelöscht werden sollen, und fragt Sie dann, ob diemanual/draft1/chapter1undmanual/draft1/chapter2Dateien. Der Befehl RM fordert als Nächstes die Berechtigung zum Durchsuchen dermanual/draft2Verzeichnis. Anschließend wird die Berechtigung zum Löschen dermanual/draft1,manual/draft2undmanual Verzeichnisse.

    Wenn Sie die Berechtigung zum Entfernen eines Unterverzeichnisses verweigern (z. B.manual/draft2), entfernt der Befehl RM diemanualVerzeichnis. Stattdessen wird die folgende Nachricht angezeigt:rm: Directory manual not empty.

Dateien

Element Beschreibung
/usr/bin/rm Enthält den Befehl rm.