Home · Kontakt · Impressum
contents index previous up next
Next: 3.3 Informationen und Hilfe Up: 3.2 Erste Befehle Previous: 3.2.2 Erstellen und Löschen

Unterabschnitte


3.2.3 Kopieren, Verschieben und Umbenennen von Dateien

Für das Kopieren, Verschieben und Umbenennen von Dateien brauchen wir hauptsächlich zwei Befehle: cp (copy) und mv (move).

3.2.3.1 Kopieren

Um eine Kopie einer Datei zu erstellen benutzen Sie den Befehl cp. Der Befehl braucht eine Datei, die es zu kopieren gilt, (Quelldatei) und den neuen Namen der Datei (Zieldatei).

ole@defiant:~/test> vi themenvorschlag.txt
ole@defiant:~/test> ls -l
insgesamt 4
-rw-r--r--    1 ole      users        2123 Okt  9 10:25 themenvorschlag.txt
ole@defiant:~/test> cp themenvorschlag.txt themenvorschlag.txt.alt
ole@defiant:~/test> ls -l
insgesamt 8
-rw-r--r--    1 ole      users        2123 Okt  9 10:25 themenvorschlag.txt
-rw-r--r--    1 ole      users        2123 Okt  9 10:26 themenvorschlag.txt.alt
ole@defiant:~/test>

So kann einfach eine Sicherungskopie einer Datei erstellt werden. In den meisten Fällen werden aber eine oder mehrere Dateien in ein anderes Verzeichnis kopiert, wie z. B. in /floppy für die Diskette. In diesem Fall wird anstatt der Zieldatei ein Zielverzeichnis angegeben. Erkennt der Befehl cp, daß das Ziel ein existierendes Verzeichnis ist, dann kopiert er die Datei ohne den Namen zu ändern in das Verzeichnis. Existiert kein Verzeichnis, so wird die Angabe als Dateiname verstanden und die Datei dementsprechend kopiert. Übrigens: cp überschreibt in der normalen Einstellung existierende Dateien gnadenlos.

ole@defiant:~/test> mkdir backup
ole@defiant:~/test> ls -l backup/
insgesamt 0
ole@defiant:~/test> cp themenvorschlag.txt backup
ole@defiant:~/test> ls -l backup/
insgesamt 4
-rw-r--r--    1 ole      users        2123 Okt  9 10:40 themenvorschlag.txt

Sie können auch mehrere Dateien zum Kopieren angegeben, wenn Ihr Ziel ein Verzeichnis ist.

ole@defiant:~/test> cp /etc/enscript.cfg /etc/esd.conf backup
ole@defiant:~/test> ls -l backup
insgesamt 16
-rw-r--r--    1 ole      users        5983 Okt  9 10:43 enscript.cfg
-rw-r--r--    1 ole      users          77 Okt  9 10:43 esd.conf
-rw-r--r--    1 ole      users        2123 Okt  9 10:40 themenvorschlag.txt

Wenn Sie das aktuelle Verzeichnis als Ziel angeben wollen, machen Sie das einfach durch den Punkt `.'. Genauso können Sie das Elternverzeichnis mit `..' als Ziel angeben. Um zu sehen, welche Dateien kopiert worden sind, benutzen Sie den Befehl cp einfach mit dem Schalter -v (verbose). Diese auch als ``Blubberschalter'' bekannte Option veranlaßt den Befehl dazu ausführlich über seine Tätigkeit zu berichten. Sie werden bei vielen Shell-Befehlen die Option -v wiederfinden. Sie können natürlich auch für die Liste der zu kopierenden Dateien die Jokerzeichen wie den Asterisk ``*'' verwenden.

ole@defiant:~/test> cp -v /etc/f* .
»/etc/fam.conf« -> »./fam.conf«
»/etc/fb.modes« -> »./fb.modes«
»/etc/fdprm« -> »./fdprm«
»/etc/filesystems« -> »./filesystems«
»/etc/fstab« -> »./fstab«
»/etc/ftpusers« -> »./ftpusers«

3.2.3.2 Verschieben und Umbenennen

Der Befehl mv arbeitet im Prinzip genau wie der Befehl cp. Allerdings existiert die Quelldatei bzw. Quelldateien danach nicht mehr. Im Prinzip ist ein Verschieben und Umbenennen nichts anderes als eine Änderung des Verzeichniseintrags. Nur wenn zwischen zwei Partitionen verschoben werden soll, muß die Datei erst kopiert und dann die alte Datei gelöscht werden. Dadurch ist Verschieben im Normalfall schneller als Kopieren.

Um also eine Datei umzubennen benutze ich den Befehl mv unter Angabe von altem und neuem Namen.

ole@defiant:~/test> ls -l
insgesamt 12
drwxr-xr-x    2 ole      users        4096 Okt  9 10:43 backup
-rw-r--r--    1 ole      users        2123 Okt  9 10:25 themenvorschlag.txt
-rw-r--r--    1 ole      users        2123 Okt  9 10:26 themenvorschlag.txt.alt
ole@defiant:~/test> mv themenvorschlag.txt.alt themenvorschlag.old
ole@defiant:~/test> ls -l
insgesamt 12
drwxr-xr-x    2 ole      users        4096 Okt  9 10:43 backup
-rw-r--r--    1 ole      users        2123 Okt  9 10:26 themenvorschlag.old
-rw-r--r--    1 ole      users        2123 Okt  9 10:25 themenvorschlag.txt

Um die Syntax eines Shell-Kommandos kurz und knapp darzustellen, werden Syntaxregeln mit einer bestimmten Symbolik verwendet.

Der mv Befehl kann als Syntaxregel so ausgedrückt werden:

mv ALTERNAME NEUERNAME

Die groß geschriebenen Worte stehen für den Wert, der dort eingetragen werden muß.

Ähnlich wie bei cp führt die Angabe eines existierenden Verzeichnis als Ziel dazu, daß die Datei nicht umbenannt, sondern in das Verzeichnis unter Beibehaltung des Namens verschoben wird.

ole@defiant:~/test> mv themenvorschlag.old backup
ole@defiant:~/test> ls -l
insgesamt 8
drwxr-xr-x    2 ole      users        4096 Okt  9 11:09 backup
-rw-r--r--    1 ole      users        2123 Okt  9 10:25 themenvorschlag.txt
oole@defiant:~/test> ls -l backup
insgesamt 8
-rw-r--r--    1 ole      users        2123 Okt  9 10:26 themenvorschlag.old
-rw-r--r--    1 ole      users        2123 Okt  9 10:40 themenvorschlag.txt

Wenn Sie ein Verzeichnis als Ziel angeben, können Sie nicht nur eine Datei verschieben, sondern eine ganze Liste von Dateien.

ole@defiant:~/test> touch datei1.txt datei2.txt datei3.txt
ole@defiant:~/test> ls -l
insgesamt 8
drwxr-xr-x    2 ole      users        4096 Okt  9 11:10 backup
-rw-r--r--    1 ole      users           0 Okt  9 11:12 datei1.txt
-rw-r--r--    1 ole      users           0 Okt  9 11:12 datei2.txt
-rw-r--r--    1 ole      users           0 Okt  9 11:12 datei3.txt
-rw-r--r--    1 ole      users        2123 Okt  9 10:25 themenvorschlag.txt
ole@defiant:~/test> mv d*.txt backup
ole@defiant:~/test> ls -l backup
insgesamt 8
-rw-r--r--    1 ole      users           0 Okt  9 11:12 datei1.txt
-rw-r--r--    1 ole      users           0 Okt  9 11:12 datei2.txt
-rw-r--r--    1 ole      users           0 Okt  9 11:12 datei3.txt
-rw-r--r--    1 ole      users        2123 Okt  9 10:26 themenvorschlag.old
-rw-r--r--    1 ole      users        2123 Okt  9 10:40 themenvorschlag.txt

Die Kommandosyntax kann durch folgende Regeln ausgedrückt werden:

mv DATEILISTE ZIELVERZEICHNIS

oder auch als

mv DATEI1 [DATEI2 [DATEI3 [...]]] ZIELVERZEICHNIS

Die eckigen Klammern zeigen an, daß der entsprechende Teil optional ist und nicht unbedingt notwendig.

Auch bei mv gibt es den ``Blubberschalter'' -v und noch weitere Optionen. Die Syntaxregel unter Berücksichtigung der Optionen lautet dann:

mv [-v] DATEILISTE ZIELVERZEICHNIS

oder auch

mv [OPTIONEN] DATEILISTE ZIELVERZEICHNIS


contents index previous up next
Next: 3.3 Informationen und Hilfe Up: 3.2 Erste Befehle Previous: 3.2.2 Erstellen und Löschen
  © 2004 by IT-Dozent Ole Vanhoefer · Zum Seitenanfang