AllInfo

Der Linux-rm-Befehl: Alles, was Sie wissen müssen

fatmawati achmad zaenuri/Shutterstock.com

Mit dem Befehl rm können Sie eine Datei oder ein Verzeichnis löschen, indem Sie seinen Namen übergeben: “rm filename” oder “rm -d directory .” Sie können auch einen Verzeichnispfad angeben. Wenn sich Dateien im Verzeichnis befinden, verwenden Sie die Option -r “rm -r directory”, um Dateien und Ordner rekursiv zu löschen.

Der Linux-Befehl rm löscht Dateien und Verzeichnisse. Um dieses Tool sicher zu verwenden, müssen Sie sicher sein, was passieren wird, wenn Sie die Eingabetaste drücken. Folgendes müssen Sie wissen.

Inhaltsverzeichnis

Was ist den rm-Befehl unter Linux?
Wie lösche ich Dateien mit rm
Verwendung von Platzhaltern mit rm
Interaktive Verwendung von rm
Verwendung der Option rm Force
Löschen von Verzeichnissen mit rm
Vermeidung von Fehlern bei der Verwendung rm
Welche PSA?

Was ist der rm-Befehl in Linux?

Der Linux-rm-Befehl dient hauptsächlich zum Löschen von Dateien. Es ist eines, auf das die meisten Menschen stoßen, sobald sie mit der Verwendung von Linux beginnen. Gerade weil Sie ein Linux-Neuling sind, werden Sie wahrscheinlich Fehler machen. Sie erstellen oder kopieren Dateien versehentlich, mit falschem Namen oder an den falschen Ort. Das ist alles Teil der Lernkurve der Befehlszeile. Die Bereinigungsoperationen für solche Fehler betreffen rm .

VERWANDTE 8 Tippfehler, die Sie unter Linux unbedingt vermeiden müssen

Der Befehl rm kann Dateien, Dateigruppen, Verzeichnisse oder komplette Verzeichnisbäume löschen. Deshalb muss es mit Vorsicht verwendet werden. Die Verwendung von rm ist nicht schwierig, aber die Strafe für Fehler ist hoch.

Wenn eine Datei mit rm gelöscht wird, ist sie weg. Es wird nicht in den Papierkorb verschoben. Es wird sofort ausgelöscht. Das bedeutet nicht, dass Sie die Verwendung von rm vermeiden sollten. Aber um es sicher zu verwenden, müssen Sie sich dessen bewusst sein, was es kann, und sicherstellen, dass Sie es richtig verwenden.

Einige Tools sind gefährlicher als andere und weit weniger fehlerverzeihend. Deshalb gab es nie einen Film namens The Texas Wrench Massacre. rm ist kein Schraubenschlüssel, es ist definitiv eine Kettensäge.

Menschen benutzen jeden Tag den ganzen Tag Kettensägen, und solange sie verantwortungsbewusst und achtsam damit umgehen, geht es ihnen gut. Dasselbe gilt für rm . Wenn Sie rm aus Ihrer Werkzeugtasche ziehen, sollten Sie langsamer werden und Ihre Befehlszeile überprüfen, dann noch einmal überprüfen.

Der Befehl rm ist eine ausführbare Datei, er ist nicht Teil der Hülse. Also, obwohl wir hier Bash verwenden, ist es die Standard-Linux-RM, keine spezielle Bash-RM.

VERWANDT: Befehlszeilen: Warum stören sich die Leute immer noch daran?

Wie man Dateien mit rm löscht

Am einfachsten verwenden Sie rm, indem Sie den Namen einer Datei angeben, die Sie löschen möchten.

rm config.gc

Sie kehren unbemerkt zur Befehlszeile zurück. rm nimmt die klassische, geschlossene Linux-Haltung ein, dass Sie davon ausgehen können, dass es das getan hat, was Sie wollten, wenn es sich über nichts beschwert. Die Angabe eines solchen Dateinamens bewirkt, dass rm im aktuellen Arbeitsverzeichnis nach der Datei sucht.

Sie können mehrere Dateinamen in der Befehlszeile angeben. Sie können auch einen Verzeichnispfad angeben, wenn sich eine Datei, die Sie löschen möchten, nicht im aktuellen Verzeichnis befindet.

rm memlog.sh /home/dave/dev-archive/config.gc

Auch hier wird nichts gemeldet, wenn rm es schafft, die angegebenen Dateien zu löschen.

VERWANDT: 37 wichtige Linux-Befehle, die Sie kennen sollten

Platzhalter mit rm verwenden

Mit Platzhaltern können Sie Gruppen oder Sammlungen von Dateien angeben, ohne die einzelnen Dateien in der Befehlszeile auflisten zu müssen.

Das Sternchen “*” steht für eine beliebige Folge von Zeichen, einschließlich keiner. Das Fragezeichen “?” steht für ein beliebiges einzelnes Zeichen.

Um zu prüfen, ob Ihre Wildcards Ihren Erwartungen entsprechen, und nicht mehr, können Sie sie mit ls verwenden, bevor Sie sie mit rm verwenden.

Um alle PNG-Dateien im aktuellen Verzeichnis zu löschen, verwenden Sie “*.png.” Dies bedeutet eine beliebige Folge von Zeichen gefolgt von “.png” wird abgeglichen. Wenn die Dateien gelöscht wurden, können wir mit ls überprüfen, ob sie verschwunden sind.

ls *.png rm *.png ls *.png

Auf unserem Testcomputer haben wir zwei Dateien im aktuellen Verzeichnis, deren Namen mit “config.& beginnen. #8221;

Wir können beide löschen, indem wir den Sternchen-Platzhalter verwenden. Es stimmt mit beiden Dateien überein, da rm nach Dateinamen sucht, die mit “config” beginnen, gefolgt von einer beliebigen Zeichenfolge. Bei einer Datei ist diese Zeichenfolge “.sl3”, die Dateinamenerweiterung. Der andere Dateiname hat keine Zeichen nach “config”, aber da das Sternchen irgendwelchen Zeichen oder keinen Zeichen entspricht, stimmt es auch mit diesem Dateinamen überein.

ls config* rm config* ls config*

< img src="http://www.howtogeek.com/pagespeed_static/1.JiBnMqyl6S.gif" />

Sie können das Fragezeichen paarweise verwenden. Dadurch werden Dateien gelöscht, deren Dateierweiterungen genau zwei Zeichen lang sind.

ls *.?? rm *.?? ls *.??

VERWANDT: 15 Sonderzeichen Wissenswertes für Bash

Interaktive Verwendung von rm

Ein sicherer Weg, rm zu verwenden, besteht darin, es zu zwingen, nach einer Bestätigung zu fragen, bevor es jede Datei löscht. Mit der Option -i (interaktiv) können Sie dies tun. Wenn Sie diese Option zu Ihrer Befehlszeile hinzufügen, werden Sie von rm vor jedem Löschen aufgefordert, was Ihnen die Möglichkeit gibt, Aktionen zu überspringen, die Sie nicht beabsichtigt hatten.

Wir verwenden das -i (interaktiv) Option in diesem Befehl. Es versucht, alle Dateien mit einer Dateierweiterung mit einem einzigen Zeichen zu löschen.

rm -i *.?

Jede übereinstimmende Datei wird der Reihe nach präsentiert. Wenn Sie mit “y” oder “Y” die Datei wird gelöscht. Wenn Sie mit “n” antworten, bleibt die Datei erhalten. Wenn Sie mit etwas anderem als “y” oder “y”, die Datei bleibt erhalten. Sie können einfach “Enter” und die Datei bleibt erhalten.

Sie können Ihre Dateiliste schnell durcharbeiten, indem Sie Dateien löschen oder überspringen, um diejenigen auszuwählen, die Sie entfernen möchten. Wie wir sehen werden, können Sie die Option i- (interaktiv) mit anderen rm-Optionen verwenden.

Linux-Befehlsdateien tar · pv ·cat · tac · chmod · grep ·  diff · sed · ar · man · pushd · popd · fsck · testdisk · seq · fd · pandoc · cd · $PATH · awk · verbinden · jq · falten ·uniq · journalctl · tail · stat · ls · fstab · echo · weniger · chgrp · chown · rev · aussehen · Zeichenfolgen · Typ · umbenennen · zip · entpacken ·< /strong> mount · umount · installiere · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · convert · rclone · shred · srm · scp · gzip · chattr · cut ·find · umask · wc Processes alias · screen · top · nice · renice · progress · strace · systemd · tmux · chsh · Geschichte · bei · Batch · kostenlos · welche · dmesg · chfn · usermod ·ps · chroot · xargs · tty · pinky · lsof · vmstat · timeout · wall · ja · kill · sleep · sudo · su · time · groupadd · usermod ·< /strong> Gruppen · lshw · Herunterfahren ·neu starten · anhalten · ausschalten · passwd · lscpu · crontab · date · bg · fg · pidof · nohup · pmap Netzwerk netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · dig · finger · nmap · ftp · curl · wget · who · whoami ·· iptables · ssh-keygen · ufw · arping · firewalld

VERWANDT: Beste Linux-Laptops für Entwickler und Enthusiasten

Verwendung der rm-Force-Option

Wenn Sie versuchen, eine schreibgeschützte Datei zu löschen, fordert rm Sie zur Bestätigung auf, bevor die Datei gelöscht wird. Das ist ein gutes Sicherheitsnetz, aber eines, das mühsam werden könnte, wenn Sie viele Dateien löschen müssen.

rm geonames.sl3

Die Option -f (erzwingen) weist rm an, niemals nachzufragen. Sie sagen ihm: „Ja, löschen Sie alle Dateien, zu denen Sie mich normalerweise auffordern würden.“ Es verhindert auch, dass rm sich über nicht vorhandene Dateien beschwert.

rm -f geonames.sl3

Die Option -f (erzwingen) wird häufig verwendet, wenn Sie eine verschachtelte Gruppe von Dateien und Verzeichnissen löschen.

Verzeichnisse löschen mit rm

Der Befehl rm kann optional auch Verzeichnisse samt den darin enthaltenen Dateien entfernen. Dies ähnelt dem Befehl rmdir, aber rmdir kann keine Verzeichnisse mit darin enthaltenen Dateien löschen. Es löscht nur leere Verzeichnisse. Der Befehl rm kann leicht Verzeichnisse löschen, die Dateien und andere Verzeichnisse enthalten.

VERWANDTESSo löschen Sie Dateien und Verzeichnisse im Linux-Terminal

Das Löschen eines Verzeichnisses ähnelt dem Löschen einer Datei. Wir geben den Namen des Verzeichnisses in der Befehlszeile an. Wir müssen die Option -d (Verzeichnis) einfügen. Wie beim Löschen von Dateien können wir den Namen mehrerer Verzeichnisse angeben. Wir können einen Pfad zu einem Verzeichnis angeben, das sich nicht im aktuellen Arbeitsverzeichnis befindet.

rm -d old-projects

Wenn das Verzeichnis Dateien enthält, schlägt dies fehl.

Um ein Verzeichnis und seinen Inhalt zu löschen, verwenden Sie das Flag -r (rekursiv). Dies löscht das Verzeichnis, seine Dateien und alle darin enthaltenen verschachtelten Verzeichnisse.

rm -d Archiv rm -r Archiv

Der zweite Befehl ist erfolgreich.

Um rm in Voll- Im Kettensägenmodus können wir die Optionen -r (rekursiv) und -f (erzwingen) kombinieren. Dies weist rm an, alle Dateien und Verzeichnisse in einem Verzeichnisbaum rekursiv zu löschen, selbst wenn sie schreibgeschützt sind, und ohne uns jemals zu fragen.

Auf unserem Testcomputer haben wir ein Verzeichnis mit dem Namen „Migrationscode“. Es enthält Dateien und ein weiteres Verzeichnis namens “6502.” Die “6502” enthält auch Dateien und ein weiteres Verzeichnis mit dem Namen “ASM.” In diesem Verzeichnis befinden sich auch Dateien. Einige der Dateien sind schreibgeschützt.

Wir fügen auch den Befehl -v (ausführlich) hinzu, damit rm uns mitteilt, was es tut.

rm -rfv migrierter Code

In der Ausgabe können wir sehen, dass die Dateien entfernt wurden und wenn sie& #8217;leer sind, werden auch die Verzeichnisse entfernt.

Vermeidung von Fehlern bei der Verwendung von rm< /h2>

Leerzeichen und andere merkwürdige Zeichen in Dateinamen können Probleme bereiten. Dateinamen, die mit einem Bindestrich “-” können beispielsweise mit Befehlszeilenoptionen verwechselt werden. Wenn wir eine Datei namens “-contributors.txt” haben, versucht rm, den Namen als eine Folge von Befehlszeilenoptionen zu verarbeiten.

Da rm keine Option namens “-c“ hat, schlägt die Befehlszeilenanalyse fehl und die Datei wird nicht gelöscht. Um die Datei zu löschen, müssen Sie ihr “./” um einen Pfad dorthin bereitzustellen.

rm -contributors.txt rm ./-contributors.txt

Auch Leerzeichen in Dateinamen sind problematisch. Geben Sie entweder den gesamten Dateinamen in Anführungszeichen ein oder verwenden Sie die Tabulatorvervollständigung, um den Namen der Datei für Sie in die Befehlszeile einzufügen, wobei Sie die Leerzeichen maskieren. Wenn Sie keine dieser Optionen verwenden, behandelt rm jeden Teil des Dateinamens als einzelne Datei.

VERWANDTE Umgang mit Leerzeichen in Dateinamen unter Linux

Hier haben wir zwei Dateien, eine namens “backup” und eine mit dem Namen “Sicherung zum Löschen.” Wir können das Problem mit diesen Dateinamen demonstrieren, indem wir ls verwenden. Wenn wir versuchen, ls auf dem “zu löschenden Backup” file und wir den Dateinamen nicht maskieren oder anführen, schlägt der Befehl fehl.

ls -hl backup to delete

ls beschwert sich, dass es keine Dateien namens “to” oder “löschen”, aber es findet eine Datei namens “backup.” Das wird auch rm tun. Es beschwert sich über zwei fehlende Dateien und löscht dann die Datei mit dem Namen “backup”, was nicht das ist, was wir wollten.

rm backup to delete < p>

rm denkt, dass es mit drei Dateien arbeitet, “backup&#8221 ;, “in” und “löschen.” Es beschwert sich, dass es “to” und “delete”, aber es findet “backup” und löscht es stillschweigend.

Durch Anführung des Dateinamens kann rm die richtige Datei löschen.

rm ' zu löschende Sicherung'

Sie können die Leerzeichen auch mit Backslashes ““ wie folgt:

rm backup to delete

Wenn Sie Verwenden Sie die Tab-Vervollständigung, um Ihre Dateinamen einzugeben, sie werden bei Bedarf automatisch maskiert.

Welche PPE?

Im Gegensatz Kettensägen aus der realen Welt gibt es keine persönliche Schutzausrüstung, die Sie mit rm verwenden können.

Was Sie tun können, ist, Ihre Syntax mit ls zu überprüfen, bevor Sie es mit rm versuchen, und den interaktiven Modus verwenden, damit Sie entscheiden können, was gelöscht wird.

Abgesehen davon ist es Übung bis Sie sich wohl und sicher fühlen. Der sicherste Weg, dies zu tun, besteht darin, eine Reihe von Opferdateien in ein Verzeichnis zu kopieren und an diesen zu üben.

VERWANDT: Dateien löschen, die älter als x Tage unter Linux sind< /strong>

WEITER LESEN

Exit mobile version