Linux-Praxisbuch/ rm

Der Remove Befehl ( Lösch Befehl ) rm

AllgemeinesBearbeiten

Das Kommando rm (remove) löscht eine oder mehrere Dateien. Um Dateien löschen zu können, benötigt man Schreibrechte in dem jeweiligen Verzeichnis. Wenn diese für das aktuelle Verzeichnis fehlen, muss der Löschvorgang für jede Datei mit y oder n bestätigt oder abgelehnt werden.

Mit dem Befehl rm muss man vorsichtig umgehen, da die gelöschten Dateien nicht oder nur unter großen Schwierigkeiten wiederhergestellt werden können.

Einfaches BeispielBearbeiten

Es soll die datei1 gelöscht werden. Sie steht alleine im Verzeichnis.

user@linux ~/testdir$ ls 
datei1 
user@linux ~/testdir$ rm datei1 
user@linux ~/testdir$ ls 
user@linux ~/testdir$ 

OptionenBearbeiten

Mit der Option -r löscht rm auch Verzeichnisse, selbst wenn sie nicht leer sind.

user@linux ~/testdir$ ls -lR 
.:
insgesamt 0
-rw-r--r--    1 user     users           0 Mai 29 19:34 datei1
-rw-r--r--    1 user     users           0 Mai 29 19:34 datei2
-rw-r--r--    1 user     users           0 Mai 29 19:34 datei3
-rw-r--r--    1 user     users           0 Mai 29 19:34 datei4
drwxr-xr-x    2 user     users         144 Mai 29 19:34 dir1

./dir1:
insgesamt 0
-rw-r--r--    1 user     users           0 Mai 29 19:34 datei1
-rw-r--r--    1 user     users           0 Mai 29 19:34 datei2
-rw-r--r--    1 user     users           0 Mai 29 19:34 datei3
-rw-r--r--    1 user     users           0 Mai 29 19:34 datei4 
user@linux ~/testdir$ rm -r * 
user@linux ~/testdir$ 

Weitere nützliche Option sind:

-i: 	interaktives Löschen. Jedes Löschen muss mit y oder n bestätigt oder abgelehnt werden. 	
-f: 	löscht auch schreibgeschützte Dateien ohne Bestätigung 	

Alles löschenBearbeiten

Achtung: Wenn man im Wurzelverzeichnis / ist und als root den Befehl rm -r * ausführt, löscht man ALLE Dateien des Systems! Daher ist rekursives Löschen nur mit äußerster Vorsicht anzuwenden!

Bei der Eingabe von

rm -rf *

werden vom aktuellen Verzeichnis ausgehend alle Dateien und Unterverzeichnisse ohne Rückfrage gelöscht. Auch diese Variante kann viel Ärger anrichten.


Eine "gefährliche" Option soll hier nicht unerwähnt bleiben:

-d:  Löscht Verzeichnisse mittels eines unlink Systemaufrufes. Da hierbei die enthaltenen 
     Dateien nicht mitgelöscht werden, ist das Dateisystem hinterher meist inkonsistent. 
     Es wird dann wahrscheinlich eine Dateisystemreparatur notwendig sein.

Final shutdownBearbeiten

Siehe http://www.linux-user.de/ausgabe/2003/03/084-logout/

Weitere BeispieleBearbeiten

Sie haben ein leeres Verzeichnis /wik . Dieses wollen Sie löschen.

knoppix:/> rm wik
rm: Entfernen von ,,wik" nicht möglich: Keine Berechtigung
knoppix:/> su
Password:
linux:/ # rm wik
rm: Entfernen von ,,wik" nicht möglich: Ist ein Verzeichnis
linux:/ # rmdir wik

Keine Fehlermeldung mehr. Es hat funktioniert.

Wie kann man ein ausführbares Programm endgültig löschen ?Bearbeiten

Sie spielen immer wieder dasselbe Spiel und es kostet Sie allmählich zu viel Zeit . Deswegen wollen Sie das Programm loswerden. Das Programm ist in KDE eingebunden. Zunächst einmal wird das Programm quick and dirty entfernt. Dann kann man es auch aus KDE entfernen und eventuell noch die Hilfedateien zu dem Programm. Als Beispiel werden die Kartenspiele von KDE herangezogen.

Wie heißt das Programm wirklich ?Bearbeiten

Das Kmenü verrät einem nicht so schnell wie ein Programm heißt. Deswegen ziehen wir das Programm mit der festgehaltenen Maustaste aus dem Kmenü auf den Desktop. Dort kopieren wir es hin oder verknüpfen es. Wir sehen jetzt bereits seinen Namen: Patiencen. Durch einen Klick auf den Icon mit der rechten Maustaste können wir uns die Eigenschaften des Programmes anschauen. Das Programm heißt kpat.

Wo steht das Programm ??Bearbeiten

Als erstes müssen Sie herausfinden wo in Ihrem Linuxsystem kpat zu finden ist. Dazu starten Sie eine Suche. Es gibt dafür 2 Möglichkeiten.

Suche über die KDE Datei SucheBearbeiten

Dazu öffnen Sie das Kmenü und wählen den Menüpunkt Dateien suchen. Als gesuchte Datei geben Sie kpat ein. Die Suche dauert ziemlich lang. Sie ergibt als Ergebnis:

/opt/kde3/bin/kpat
/opt/kde3/share/doc/HTML/de/kpat

Schneller geht die Suche mit find über die Konsole.

Suche über die KonsoleBearbeiten

Sie öffnen eine Konsole und geben dort folgendes ein:

find / -name kpat* 2>/dev/null

Werden Sie sich wundern wie häufig das Programm auf Ihrem Rechner steht. Folgendes Suchergebnis erhalten Sie:

/opt/kde3/bin/kpat
/opt/kde3/share/doc/HTML/de/kpat
/opt/kde3/share/doc/HTML/en/kpat
/opt/kde3/share/apps/kpat
/opt/kde3/share/apps/kpat/kpatui.rc
/opt/kde3/share/icons/crystalsvg/16x16/apps/kpat.png
/opt/kde3/share/icons/crystalsvg/32x32/apps/kpat.png
/opt/kde3/share/icons/crystalsvg/48x48/apps/kpat.png
/opt/kde3/share/locale/de/LC_MESSAGES/kpat.mo
/opt/kde3/share/applications/kde/kpat.desktop
/tmp/kde-rho/kpatr3Qtsa.tmp
/tmp/kde-rho/kpat8yZyQb.tmp
/tmp/kde-rho/kpatphbs4a.tmp
/tmp/kde-rho/kpatGgrVea.tmp
/home/home/.kde/share/config/kpatrc
/home/home/Desktop/kpat.desktop

Die wichtigste Datei ist die erste . Sie steht in den Binaries. /opt/kde3/bin/kpat

Datei freigeben oder als Root einloggenBearbeiten

Wenn Sie versuchen die Datei als normaler Linuxnutzer mit dem Befehl

rm /opt/kde3/bin/kpat 

zu löschen erhalten Sie eine Fehlermeldung, da die Datei nur lesbar aber nicht beschreibbar ist.

knoppix@linux:~> rm /opt/kde3/bin/kpat
rm: reguläre Datei (schreibgeschützt) ,,/opt/kde3/bin/kpat" entfernen? y
rm: Entfernen von ,,/opt/kde3/bin/kpat" nicht möglich: Keine Berechtigung

Sie müssen also mit su und Ihrem Passwort als Root einloggen , dann können Sie auch löschen.

Datei löschenBearbeiten

Der Befehl zum Löschen unter Linux ist rm (remove, entfernen). Wenn Sie die Datei als root mit

rm /opt/kde3/bin/kpat

löschen, gibt es keine Rückfrage mehr und die Datei ist endgültig weg. Sie ist nicht im Papierkorb und nicht wiederherstellbar. Wenn Sie jetzt versuchen, das Programm kpat zu starten, geht dies nicht mehr. Sie erhalten eine Fehlermeldung:


Als Belohnung haben Sie viel Zeit gewonnen, da sie nicht mehr Patiencen spielen müssen.

Fehlermeldungen des remove BefehlsBearbeiten

Siehe auch:Bearbeiten

  • rmdir Löscht ein leeres Verzeichnis

LinksBearbeiten