Das „rm“ bedeutet entfernen. Mit diesem Befehl wird eine Datei entfernt. Die Befehlszeile verfügt im Gegensatz zu anderen GUIs nicht über einen Papierkorb oder Papierkorb zum Wiederherstellen der Dateien. Seien Sie daher bei der Verwendung dieses Befehls sehr vorsichtig. Sobald Sie eine Datei gelöscht haben, wird sie dauerhaft entfernt.
Einführung in rm
rm ist ein allgemeiner Befehl in Unix und anderen Unix-ähnlichen Systemen. Es wird verwendet, um Objekte wie symbolische Links, Verzeichnisse und Computerdateien aus den Dateisystemen zu löschen. Außerdem werden einige spezielle Dateien wie Sockets, Pipes und Geräteknoten entfernt, genau wie der Befehl del in Microsoft Windows, OS/2 und MS-DOS. Der Befehl ist auch in der EFI-Shell verfügbar.
Übersicht über rm
Der Befehl rm löscht mithilfe des Systemaufrufs „unlink“ Objektreferenzen aus dem Dateisystem, in denen die Objekte möglicherweise zwei oder mehr Referenzen hatten (z. B. eine Datei mit zwei Namen), und die Objekte selbst werden nur dann entfernt, wenn alle Referenzen vorhanden sind wurde gelöscht und die Programme haben noch keine offenen Handles für die Objekte.
Ganzzahl zum String in Java
- Es ermöglicht Szenarien, in denen ein Programm eine Datei starten, sie sofort aus dem Dateisystem entfernen und für begrenzten Speicherplatz verwenden kann, wobei es weiß, dass der Speicherplatz der Datei wiederhergestellt wird, nachdem das Programm geschlossen wird, selbst wenn es durch einen Absturz geschlossen wird.
- Im Allgemeinen schadet der Befehl den Dateidaten nicht, da er darauf abzielt, Referenzen nur schwer aufzuheben. Außerdem enthält der freigegebene Dateisystemspeicher möglicherweise noch übrig gebliebene Daten, die die gelöschte Datei verwenden. In einigen Fällen kann dies ein Sicherheitsaspekt sein, und gehärtete Versionen ermöglichen manchmal das Löschen der Daten, weil die letzte Verbindung unterbrochen wird, und Programme wie srm Und Fetzen sind speziell für die Bereitstellung von Funktionen zum Löschen von Daten verfügbar.
- Der rm-Befehl ist nur auf von Unix abgeleiteten Betriebssystemen zu finden, die normalerweise keine Wiederherstellung entfernter Dateien mit einer Methode wie dem Papierkorb zulassen. Daher ist die Angewohnheit der Benutzer, den rm-Befehl einzuschließen, eine Art Wrapper, den es einzuschränken gilt unbeabsichtigtes Löschen von Dateien.
- Außerdem gibt es einige Wiederherstellungsprogramme, die versuchen, den Index neu zu erstellen. Wenn die Teile nicht wiederverwendet werden, können sie die Datei wiederherstellen.
Kurze Geschichte von rm
Der Befehl rm entfernt bei einigen alten Unix-Versionen Verzeichnisse, wenn diese leer sind. Dennoch kann das Verhalten in einigen Versionen des Befehls rm mithilfe der Option -d erreicht werden, z. B. in den von 4.4BSD-Lite2 abgeleiteten BSDs (wie macOS, OpenBSD, NetBSD und FreeBSD).
Außerdem bietet die in GNU coreutils gruppierte rm-Version das Flag -d zur Unterstützung der Kompatibilität. Eine ähnliche Funktionalität bietet das Standard-rmdir. In Version 7 wird das Flag -i durch ersetzt 'Von Schaltern löschen' oder dsw, das in Version 1 erschien.
Syntax:
rm
Der Befehl rm entfernt die benannte Datei, nachdem Optionen enthalten sind. Benutzer können einen relativen Pfad oder einen vollständigen Pfad der Datei verwenden, um die zu entfernenden Dateien zu benennen. Der Befehl rm entfernt standardmäßig kein Verzeichnis. Der Befehl rm foo entfernt die 'foo' Datei im aktuellen Verzeichnis des Benutzers.
char zu string in Java
Der Befehl rm kann durch eine Shell-Aliasfunktion des Befehls rm -i abgedeckt werden, um versehentliches Löschen von Dateien zu ignorieren. Wenn ein Benutzer dennoch viele Dateien ohne Genehmigung entfernen möchte, kann er das Flag -i setzen, indem er das Flag -f manuell einfügt. Dieser Ansatz führt leider zu gefährlichen Gewohnheiten bei der Verwendung von Platzhaltern, was zu einer versehentlichen Entfernungsversion führt.
Der rm -rf Der Befehl wird oft in Anekdoten und Witzen über Unix-Katastrophen verwendet, darunter den Verlust mehrerer Dateien während der Erstellung des Films Pixar Und Toy Story 2 . Der rm -rf / Die Version des Befehls würde dazu führen, dass alle Dateien, auf die über das aktuelle Dateisystem zugegriffen werden kann, über die Maschine entfernt werden, wenn sie von einem Superuser ausgeführt werden.
Für das Entfernen einer Datei im übergeordneten Verzeichnis ist auf den meisten Dateisystemen eine Schreibberechtigung erforderlich. Um ein Verzeichnis zu entfernen, muss man jeden seiner Inhalte rekursiv entfernen. Es ist erforderlich, dass die Ausführungs- und Schreibberechtigungen für dieses Verzeichnis und das nicht leere Verzeichnis rekursiv enthalten sind. Die Leseberechtigungen sind erforderlich, um die Verzeichnisinhalte anzugeben und zu entfernen. Manchmal kommt es zu einer seltsamen Situation, in der ein nicht leeres Verzeichnis nicht entfernt werden kann, da man nicht über die Schreibberechtigung verfügt und daher seinen Inhalt nicht entfernen kann. Wenn ein ähnliches Verzeichnis jedoch leer wäre, könnte man es entfernen.
Beispiel:
Versuchen Sie es mit dem Catch-Block in Java
rm myfile1
Im obigen Schnappschuss haben wir die Datei myfile1 mit Hilfe des Befehls „rm“ dauerhaft entfernt.
rm-Optionen
Möglichkeit | Beschreibung |
---|---|
rm *Erweiterung | Wird zum Löschen von Dateien mit derselben Erweiterung verwendet. |
rm -r oder R | Um ein Verzeichnis rekursiv zu löschen. |
rm -i | Eine Datei interaktiv entfernen. |
rm -rf | Ein Verzeichnis gewaltsam entfernen. |
-F | -f steht für Kraft. Es ignoriert nicht vorhandene Dateien und überschreibt die Bestätigungsaufforderungen. Es werden jedoch keine Dateien über ein schreibgeschütztes Verzeichnis gelöscht. |
-In | -v steht für ausführlich. Es gibt aus, was der Befehl rm im Terminal tut. |
-D | -d steht für Verzeichnis. Es entfernt ein leeres Verzeichnis und funktioniert nur, wenn das benannte Verzeichnis leer ist. |
--one-file-system | Es löscht nur Dateien in einem ähnlichen Dateisystem wie das Argument und vermeidet das gemountete Dateisystem. |