14.4. Bearbeiten von Dateien am Shell-Prompt

Mit einem der grafischen Manager wie Nautilus oder Konquerorkönnen Dateien sehr einfach bearbeitet werden. Sie können jedoch auch über den Shell-Prompt bearbeitet werden, was oft schneller geht. Dieser Vorgang wird in diesem Abschnitt beschrieben.

14.4.1. Erstellen von Dateien

Sie können neue Dateien entweder mithilfe von Anwendungen (z.B. Texteditoren) oder über den Befehl touch erstellen, mit dem eine leere Datei angelegt wird, die Sie zum Hinzufügen von Text oder Daten verwenden können. Wenn Sie eine Datei mit dem Befehl touch anlegen möchten, geben Sie an einem Shell-Prompt folgendes ein:

touch <filename>

Ersetzen Sie dabei <filename> mit einem Namen Ihrer Wahl. Wenn Sie eine Liste der Verzeichnisse anzeigen lassen, wird die angelegte Datei mit Null (0) Byte Größe angezeigt, da es sich hierbei um eine neue Datei handelt. Wenn Sie zum Beispiel den Befehl ls -l newfile am Shell-Prompt eingeben, dann erhalten Sie folgendes:

-rw-rw-r--    1 sam      sam             0 Apr 10 17:09 newfile

14.4.2. Dateien kopieren

Wie bei vielen Funktionen von Linux steht Ihnen auch für das Bearbeiten von Dateien und Verzeichnissen eine Vielzahl von Optionen zur Verfügung. Sie können auch das Kopieren, Verschieben oder Löschen von Dateien und Verzeichnissen beschleunigen, indem Sie entsprechend den Anleitungen in Abschnitt 13.11.5Wildcards verwenden.

Um eine Datei zu kopieren, geben Sie folgenden Befehl ein:

cp <source> <destination>

Ersetzen Sie <source> durch den Namen der Datei, die Sie kopieren möchten und <destination> durch den Namen des Verzeichnisses, in dem die Datei abgelegt werden soll.

Um also die Datei sneakers.txt in das tigger/ -Verzeichnis Ihres Home-Verzeichnisses zu kopieren, gehen Sie in Ihr Home-Verzeichnis und geben Sie Folgendes ein:

cp sneakers.txt tigger/

Sie können sowohl relative als auch absolute Pfadnamen mit cp verwenden. Ihr Home-Verzeichnis ist das Elternverzeichnis von tigger; tigger befindet sich in einem Verzeichnis, das eine Stufe unter Ihrem Home-Verzeichnis liegt.

TippTip
 

Weitere Informationen zu relativen und absoluten Pfadnamen finden Sie unter Abschnitt 13.4.

Lesen Sie die cp man-Seite (geben sie man cp an einem Shell-Prompt ein), in der Sie eine komplette Liste der über cp verfügbaren Optionen finden. Im Folgenden einige der Optionen, über die cp verfügt:

Nachdem sich die Datei sneakers.txt und im Verzeichnis tiggerbefindet, verwenden Sie den Befehl cp -i, um die Datei nochmals an den gleichen Zielort zu kopieren.

cp -i sneakers.txt tigger
cp: overwrite 'tigger/sneakers.txt'?

Wenn Sie die bereits bestehende Datei überschreiben möchten, müssen Sie die Taste [Y] drücken und dann die [Enter-Taste] betätigen. Wenn Sie die Datei hingegen doch nicht überschreiben möchten, drücken Sie jetzt die Taste [N] und anschließend die [Enter-Taste].

14.4.3. Verschieben von Dateien

Für das Verschieben von Dateien steht Ihnen der Befehlmv zur Verfügung. Weitere Informationen über mv finden Sie in der mv -man-Seite (geben Sie man mv ein).

Zu den gebräuchlichsten Optionen für die Verwendung mit mv zählen:

Wenn Sie eine Datei aus Ihrem Home-Verzeichnis in ein anderes Verzeichnis verschieben möchten, müssen Sie hierzu lediglich Folgendes eingeben (Sie müssen sich in Ihrem Home-Verzeichnis befinden):

mv sneakers.txt tigger

Als Alternative können Sie unter Verwendung absoluter Pfadnamen auch folgendes eingeben:

mv sneakers.txt /home/newuser/sneakers.txt /home/newuser/tigger

14.4.4. Löschen von Dateien und Verzeichnissen

Wir hatten bereits das Erstellen von Dateien mit dem Befehl touch besprochen. Zudem hatten Sie das Verzeichnis tigger mit Hilfe des Befehls mkdir erstellt.

Nun wird das Löschen von Dateien und Verzeichnissen besprochen. Das Löschen von Dateien und Verzeichnissen mit dem Befehl rm ist mit keinerlei Schwierigkeiten verbunden. In der rm man-Seite finden Sie weitere Informationen. Die Optionen für das Löschen von Dateien und Verzeichnissen enthalten:

Um die Datei piglet.txt mit dem Befehl rm zu löschen, geben Sie Folgendes ein:

rm piglet.txt

WarnungWarnung
 

Eine Datei oder ein Verzeichnis, das mit dem Befehl rm gelöscht wurde, kann nicht wiederhergestellt werden.

Aus diesem Grund ist die Option -i (interaktiv) zu empfehlen, da Sie bei dieser Option die Möglichkeit haben, noch einmal zu überlegen, ob Sie die Datei tatsächlich löschen möchten.

rm -i piglet.txt
rm: remove 'piglet.txt'?

Für das Löschen von Dateien können Sie auch Wildcards * verwenden. Allerdings sollten Sie diese Wildcards nur mit größter Sorgfalt verwenden, da die Gefahr des unbeabsichtigten Löschens von Dateien besteht.

Beim Löschen von Dateien mit Wildcards müssen Sie beispielsweise Folgendes eingeben:

rm pig*

Mit diesem Befehl werden alle Dateien im Verzeichnis gelöscht, die mit den Buchstaben pig beginnen.

Sie können auch mehrere Dateien durch Eingabe eines Befehls rm löschen, wie beispielsweise:

rm piglet.txt sneakers.txt

Mit dem Befehl rmdir können Sie ein leeres Verzeichnis löschen (z.B. rmdir foo). Um ein Verzeichnis mit dem Befehl rm zu löschen, müssen Sie die Option -r festlegen.

Wenn Sie z.B. das Verzeichnis tigger rekursiv löschen möchten, geben Sie Folgendes ein:

rm -r tigger

Wenn Sie verschiedene Optionen miteinander kombinieren möchten, wie beispielsweise für das erzwungene Löschen aller Daten in einem Verzeichnis, können Sie einen Befehl eingeben wie:

rm -rf tigger

Eine sichere Alternative zu dem Befehl rm für das Löschen von Verzeichnissen ist der Befehl rmdir. it diesem Befehl können Sie nur leere Verzeichnisse löschen. Damit ist ausgeschlossen, dass Sie versehentlich wichtige Dateien oder Ihr gesamtes System löschen.

WarnungWarnung
 

rm ist ein bedeutender Befehl, mit dem Sie Ihr gesamtes System löschen können. Wenn Sie als root einen so einfachen Befehl wie rm -rf / eingeben, sind Sie verloren - mit diesem Befehl werden nämlich rekursiv alle Systemdaten gelöscht.

Für den Befehl rmdir steht eine umfassende man-Seite bereit, die Sie durch Eingeben von (man rmdir) anzeigen können.