Home / LinuxUser / 2002 / 03 / cp und mv

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

War doch klar...
(243 Punkte bei 15 Stimmen)
Re: War doch klar...
(179 Punkte bei 5 Stimmen)
Re: Skype für 64-Bit-Prozessor u. Suse 12.1
(161 Punkte bei 4 Stimmen)
Kubuntu verliert Finanzierung
(130 Punkte bei 4 Stimmen)
Offen fürs Geschäft
(80 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Bewegung für Ihre Dateien

cp und mv

01.03.2002 In dieser "Zu Befehl"-Folge zeigen wir Ihnen, wie Sie Dateien an andere Stellen kopieren oder verschieben. Bei genauem Hinsehen geschehen manchmal recht ungewöhnliche Dinge: Was passiert, wenn man einen symbolischen Link kopiert? Wie bleiben möglichst viele Eigenschaften einer Datei beim Kopieren erhalten? Und wie kopiert man Unterverzeichnisse?

Zu Befehl

Auch wenn sich viele Dinge bequem über grafische Oberflächen wie KDE oder GNOME regeln lassen - wer sein Linux-System richtig ausreizen möchte, kommt um die Kommandozeile nicht herum. Abgesehen davon gibt es auch sonst viele Situationen, in denen es gut ist, sich im Befehlszeilendschungel ein wenig auszukennen.

Original oder Fälschung?

Der Befehl cp datei1 datei2 (englisch "copy") erzeugt eine neue Datei mit dem Inhalt der Ausgangsdatei, wobei diese unverändert bleibt. Sollte datei2 schon existieren, wird sie einfach überschrieben. Eine Sicherheitsabfrage bauen Sie mit dem Parameter -i (oder in Langform --interactive) ein:

huhn@asteroid:~$ cp -i datei1 datei2
cp: »datei2« überschreiben?

Jede Antwort, die mit j, J, y oder Y beginnt, wird als Bestätigung interpretiert - alles andere heißt "nein". So eine Sicherheitsabfrage ist schön; vorsichtige Menschen setzen sich ein Alias. Für die Linux-Standard-Shell bash würde der Eintrag in der privaten Konfigurationsdatei .bashrc aus dem Home-Verzeichnis so aussehen:

alias cp='cp -i'

Wie bei allen Standardkommandos, die auf diese Weise neu definiert werden, sollten Sie auch hier Vorsicht walten lassen: Hat man sich einmal an die Sicherheitsabfrage gewöhnt, kann man leicht ins Schleudern kommen, wenn es den schützenden Alias auf einem anderen System oder unter einem anderen Account nicht gibt.

Noch mehr Sicherheit bietet der Parameter -b (--backup). Ist die Zieldatei bereits vorhanden, wird automatisch eine Sicherungskopie angelegt. Diese kann man an der Tilde erkennen: datei2~.

Was passiert aber, wenn Sie keine "normalen" Dateien, sondern einen symbolischen Linkkopieren? Die Referenz vom Link auf die Datei wird hierbei aufgelöst. Im Klartext heißt das: Kopiert wird die Datei, auf die der Link zeigt. Möchten Sie stattdessen einen neuen Link erzeugen, greifen Sie zur Option cp -d (--no-dereference) - dann wird nicht "dereferenziert", der Link (die Referenz) also nicht aufgelöst.

Es ist auch möglich, mehrere Dateien in ein Zielverzeichnis zu kopieren: Dazu hängen Sie einfach die Dateinamen hintereinander: cp datei1 datei2 datei3 verzeichnis. Für das Kopieren eines ganzen Verzeichnisses mit sämtlichen Dateien und Unterverzeichnissen, verwenden Sie cp -R (--recursive). So wird das ganze Verzeichnis rekursiv (also mit allen Dateien bis in den letzten Winkel eventuell enthaltener Unterverzeichnisse) dupliziert.

Hinter den Kulissen

Normalerweise wird die beim Kopieren entstehende neue Datei mit ownerund groupdes kopierenden Benutzers angelegt und erhält einen aktuellen timestamp. Die Zugriffsrechte der Kopie richten sich nach der gesetzten umask. Um stattdessen möglichst viele Eigenschaften der Originaldatei zu übernehmen, verwendet man die Option -p (--preserve). Hier werden auf jeden Fall Zugriffsrechte und Zeitstempel der Ursprungsdatei übernommen.

Beachten Sie, dass nur root fremdes Dateieigentum "verschenken" oder dem Verzeichnis eines bestimmten Benutzers Dateien, die einem anderen gehören, hinzufügen kann. Nur ein als root ausgeführtes cp -p bewirkt, dass die neue Datei demselben User gehört. Kopiert man als gewöhnlicher User, macht man sich damit zum Besitzer. Anderenfalls könnte ja jeder anderen eine veränderte Datei als Kuckucksei unterschieben. Systemverwalter benötigen die Option -p, um User-Verzeichnisse zu sichern. Müsste ein Administrator jedesmal nach dem Kopieren wieder Rechte und Gruppenzugehörigkeit ändern, wäre das ganz schön viel Aufwand.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

896 Hits
Wertung: 0 Punkte (0 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 03/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Duden Korrektor unter 64-Bit
Duden Korrektor unter 64-Bit
Tim Schürmann, 06.02.2012 10:36, 0 Kommentare

Der Duden Korrektor bietet eine äußerst nützliche Rechtschreib- und Grammatikkorrektur für LibreOffice und bringt in der aktuellen Version 8 e...

Aktuelle Fragen

Ubuntu 11.10 Compiz 3D Cube flackern
Moritz Obenauer, 12.02.2012 12:25, 0 Antworten
Hallo! Ich habe Ubuntu 11.10 mit Unity und den Compiz 3D Cube ein gerichtet. Er funktioniert...
Suse 12.1 Bootvorgang bleibt seit Update stehen
Wimpy *, 12.02.2012 09:22, 1 Antworten
Seit Update auf Kernel 3.1.9-1.4-desktop i686 bleibt der Bootvorgang stehen. Es erscheint der gr...
N24 Stick (Huawei E173) und Ubuntu 11.04
Patrick Obenauer, 11.02.2012 11:54, 1 Antworten
Hallo zusammen! Ich benutze einen alten Laptop, der mit Ubuntu 11.04 flott und problemlos läuft....
Wie kann man beim Einsatz von Compiz die Fenster-Dekoration einstellen?
GoaSkin , 10.02.2012 20:12, 0 Antworten
Hallo, ich nutze Linux Mint mit dem Gnome-Derivat Mate. Da die Distribution Compiz nicht autom...
rndc reload zone - failed bad zone
Ludwig jun. B., 06.02.2012 16:08, 2 Antworten
Schönen guten Tag, ich habe folgendes Problem. Immer wenn ich folgendes Kommando ausführen bek...