rm steht für „entfernen“. ‘, wie der Name schon sagt, wird der Befehl rm verwendet, um Dateien und Verzeichnisse in Linux- und UNIX-ähnlichen Betriebssystemen zu löschen oder zu entfernen. Wenn Sie neu bei Linux sind, sollten Sie beim Ausführen des Befehls rm sehr vorsichtig sein, da Sie nach dem Löschen der Datei oder des Verzeichnisses den Inhalt der Datei und des Verzeichnisses nicht wiederherstellen können. Es gibt zwar einige Tools und Befehle, mit denen gelöschte Dateien wiederhergestellt werden können, aber dafür benötigen Sie Expertenkenntnisse.
In diesem Beitrag zeigen wir 10 Linux-rm-Befehlsbeispiele. Nachfolgend finden Sie die grundlegende Syntax des Befehls rm.
# rm
Optionen, die im rm-Befehl verwendet werden.
Beispiel:1 Eine Datei entfernen oder löschen.
Löschen wir eine Datei mit dem Namen „linuxstufff.log“
[[E-Mail-geschützt] ~]$ rm linuxstufff.log[[E-Mail-geschützt] ~]$
Mehrere Dateien gleichzeitig löschen.
Nehmen wir an, ich möchte vier Textdateien auf einmal löschen. Verwenden Sie die folgende Syntax
# rm {Datei1} {Datei2}] {Datei3} {Datei4}
[[email protected] ~]$ rm file1.txt file2.txt file3.txt file4.txt[[email protected] ~]$
Beispiel:2 Dateien interaktiv löschen.
‘-ich Die Option rm im Befehl rm fragt vor dem Löschen einer Datei ab, das Beispiel ist unten gezeigt.
[[email protected] ~]$ rm -i linuxstufff.log rm:reguläre Datei „linuxstufff.log“ entfernen? y[[email protected] ~]$
Beispiel:3 Löschen Sie ein leeres Verzeichnis unter Linux
Verwenden Sie ‘-d ‘ Option im rm-Befehl zum Löschen eines leeren Verzeichnisses.
[[email protected] ~]$ ls -R appdata/appdata/:[[email protected] ~]$ rm -d appdata/[[email protected] ~]$
wir können auch 'rmdir verwenden ‘ Befehl zum Löschen eines leeren Verzeichnisses unter Linux.
[[email protected] ~]$ ls -R appdata/appdata/:[[email protected] ~]$ rmdir appdata[[email protected] ~]$
Beispiel:4 Rekursives Löschen eines Verzeichnisses mit der Option „-r“
‘-r Die Option im Befehl rm löscht alle Dateien und Unterverzeichnisse rekursiv des übergeordneten Verzeichnisses.
[[email protected] ~]$ ls -lR dbstore/dbstore/:total 0-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 26 23:59 file1.log-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 26 23:59 file2.log-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 26 23:59 file3.logdrwxrwxr-x. 2 linuxtechi linuxtechi 6. März 26 23:59 servicedbstore/service:total 0[[email protected] ~]$ rm -r dbstore/[[email protected] ~]$
Beispiel:5 Dateien und Unterverzeichnisse interaktiv löschen.
Verwenden Sie „-ri ‘-Option im rm-Befehl zum interaktiven Löschen von Dateien und Unterverzeichnissen. Nehmen wir an, wir möchten alle Dateien und Verzeichnisse von ‘dbstore’ löschen Verzeichnis interaktiv.
[[email protected] ~]$ ls -lR dbstore/dbstore/:total 0-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 00:02 file1.log-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 00:02 file2.log-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mär 27 00:02 file3.logdrwxrwxr-x. 2 linuxtechi linuxtechi 6 Mar 27 00:02 servicedbstore/service:total 0[[email protected] ~]$ rm -ri dbstore/rm:Abstieg in das Verzeichnis „dbstore/“? yrm:reguläre leere Datei „dbstore/file1.log“ entfernen? yrm:reguläre leere Datei „dbstore/file2.log“ entfernen? yrm:reguläre leere Datei „dbstore/file3.log“ entfernen? yrm:Verzeichnis „dbstore/service“ entfernen? yrm:Verzeichnis „dbstore/“ entfernen? y[[email protected] ~]$
Beispiel:6 Erzwungenes Löschen von Dateien mit der Option „-f“
‘-f Die Option im rm-Befehl entfernt oder löscht die Dateien zwangsweise, unabhängig von ihren Berechtigungen, und ignoriert auch nicht vorhandene Dateien.
Löschen wir eine schreibgeschützte Datei „tech.txt“
[[email protected] ~]$ ls -l tech.txt -r--r--r--. 1 linuxtechi linuxtechi 0 Mar 27 00:23 tech.txt[[email protected] ~]$[[email protected] ~]$ rm tech.txt rm:schreibgeschützte reguläre leere Datei 'tech.txt' entfernen?
Wie wir oben sehen können, werden wir beim Versuch, eine schreibgeschützte Datei mit dem Befehl rm ohne die Option „-f“ zu löschen, aufgefordert, die schreibgeschützte Datei zu löschen.
Versuchen Sie nun, eine Datei mit der Option „-f“ zu löschen.
[[email protected] ~]$ rm -f tech.txt [[email protected] ~]$
Versuchen Sie auch, eine nicht vorhandene Datei zu löschen.
[[email protected] ~]$ rm -f nonexist.txt[[email protected] ~]$
Hinweis :Die Option „-f“ des Befehls rm funktioniert nicht für schreibgeschützte Verzeichnisse,
Nehmen wir ein Beispiel, das Verzeichnis „/home/linuxtechi/location/ ‘ ist schreibgeschützt und die Datei (‘db_stuff ‘) innerhalb dieses Verzeichnisses ist nicht geschützt.
[[email protected] ~]$ ls -ld /home/linuxtechi/location/drwxrwxr-x. 2 root root 29. März 27 00:43 /home/linuxtechi/location/[[email protected] ~]$ ls -l /home/linuxtechi/location/db_stuff -rw-rw-r--. 1 linuxtechi linuxtechi 17 Mar 27 00:43 /home/linuxtechi/location/db_stuff[[email protected] ~]$ rm -f /home/linuxtechi/location/db_stuffrm:kann '/home/linuxtechi/location/db_stuff' nicht entfernen:Berechtigung verweigert[[email protected] ~]$
Beispiel 7:Vor dem Löschen von mehr als drei Dateien oder rekursives Löschen einmal nachfragen.
‘-ich Die Option im Befehl rm fragt einmal nach, bevor mehr als drei Dateien gelöscht oder rekursiv gelöscht werden.
Angenommen, ich möchte alle Protokolldateien löschen, die mit dem Namen „app“ im Verzeichnis „linux_store“ beginnen.
[[email protected] ~]$ ls -l linux_store/total 0-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mär 27 01:07 app1.log-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 01:07 app2.log-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mär 27 01:07 app3.log-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mär 27 01:07 app4.log-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 01:07 app5.log[[email protected] ~]$ rm -I linux_store/app* rm:5 Argumente entfernen? y[[email protected] ~]$
Beispiel:8 Regulärer Ausdruck im rm-Befehl
Wir können reguläre Ausdrücke im rm-Befehl verwenden, einige der Beispiele sind unten gezeigt:
Lassen Sie uns 5 Protokolldateien löschen, beginnend mit log1 bis log5 im Verzeichnis „linux_store“. ‘.
[[email protected] linux_store]$ pwd/home/linuxtechi/linux_store[[email protected] linux_store]$ lltotal 0-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 01:15 log1.txt-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 01:15 log2.txt-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 01:15 log3.txt-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 01:15 log4.txt-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 01:15 log5.txt-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mär 27 01:15 log6.txt...................................... ..[[email protected] linux_store]$ [[email protected] linux_store]$ rm -f log{1..5}.txt [[email protected] linux_store]$
Löschen Sie alle Dateien des aktuellen Verzeichnisses, die auf „.txt“ enden
[[email protected] linux_store]$ rm -f *.txt[[email protected] linux_store]$
Alle Dateien des aktuellen Arbeitsverzeichnisses löschen, dessen Erweiterung 3 Zeichen hat.
[[email protected] linux_store]$ rm -f *.???[[email protected] linux_store]$
Beispiel:9 Löschen einer großen Anzahl von Dateien mit dem Befehl rm.
Wenn Sie versuchen, eine große Anzahl von Dateien mit dem Befehl rm zu löschen, erhalten Sie die Fehlermeldung „Argument list too long“
Im folgenden Beispiel versuche ich, alle Dateien (um „300001“) des Verzeichnisses „/home/linuxtechi/linux_store“ auf einmal zu löschen.
[[email protected] linux_store]$ ls -l | wc -l300001[[email protected] linux_store]$ rm *.log-bash:/bin/rm:Argumentliste zu lang[[email protected] linux_store]$
Um dieses Problem zu beheben, verwenden Sie den folgenden find-Befehl.
[[email protected] ~]$ find ~/linux_store/ -type f -exec rm {} \;[[email protected] ~]$
Beispiel:10 Löschen Sie eine Datei, die mit dem Bindestrich (-) beginnt
Nehmen wir an, wir haben eine Datei mit dem Namen „-store“. ‘ in unserem aktuellen Arbeitsverzeichnis und wir möchten diese Datei löschen.
[[email protected] linux_store]$ lltotal 0-rw-rw-r--. 1 linuxtechi linuxtechi 0 Mar 27 02:05 -store[[email protected] linux_store]$ rm -storerm:ungültige Option -- 's'Versuchen Sie 'rm --help' für weitere Informationen.[[email protected] linux_store]$
Verwenden Sie unten einen der Befehle, um solche Dateien zu löschen.
[[email protected] linux_store]$ rm -- \ -store [[email protected] linux_store]$OR[[email protected] linux_store]$ rm ./\ -store [[email protected] linux_store]$Weiterlesen auf :16 nützliche „cp“-Befehlsbeispiele für Linux-Anfänger