Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
cp steht für copy und ist der Befehl zum Kopieren von Dateien und Verzeichnissen.
Das Programm cp ist im essentiellen Paket
coreutils
von Ubuntu enthalten und ist deshalb auf jedem System installiert.
Die allgemeine Syntax von cp lautet [1]:
cp [OPTIONEN] QUELLE ZIEL
QUELLE
und ZIEL
können dabei sowohl Dateien als auch ein Verzeichnis sein.
Optionen von cp | |
Option | Beschreibung |
-a oder --archive | Beibehaltung von Besitzer-, Gruppen- und Zugriffsrechten und Erstellungs-, Modifikations- und Zugriffsdaten (entspricht -dR --preserve=all ) |
-b oder --backup | Sichert Dateien vor dem Überschreiben, wenn diese unterschiedlich sind |
-d | erhält symbolische Links, folgt ihnen aber nicht beim Kopieren (entspricht -P --preserve=links ) |
-i oder --interactive | fragt vor Überschreiben nach |
-l oder --link | kopiert nicht, sondern erstellt harten Link |
-n oder --no-clobber | niemals vorhandene Dateien überschreiben (-i wird wirkungslos) |
-p (klein) oder --preserve=mode,ownership,timestamps | erhält Standard-Dateiattribute, wie Zeitpunkt des letzten Schreibzugriffs |
-P (groß) oder --no-dereference | niemals symbolischen Links in der Quelle folgen |
-r oder -R oder --recursive | Verzeichnisse rekursiv kopieren |
-s oder --symbolic-link | kopiert nicht, sondern erstellt symbolischen Link |
-u oder --update | kopiert nur, wenn Zieldatei älter als Quelldatei |
-v oder --verbose | zeigt den Kopierfortschritt an |
cp kennt noch eine Reihe von weiteren Optionen, die man mit Hilfe der Option --help
aufrufen kann. Oder man schaut in die Manpages von cp.
Die Datei datei.txt aus dem aktuellen Verzeichnis nach /Dokumente kopieren, falls diese neuer ist als die bestehende:
cp -u datei.txt /Dokumente/datei.txt
Die Dateien datei.txt, dokument.odt nach /Dokumente kopieren, wenn neuer als bestehende, und Kopierfortschritt anzeigen
cp -uv datei.txt dokument.odt /Dokumente
Dateien mit bestimmtem Anfangsbuchstaben da*.txt, do*.odt kopieren, wenn neuer als bestehende, und Kopierfortschritt anzeigen
cp -uv da*.txt do*.odt /Dokumente
Im letzten Beispiel werden alle Dateien aus /home/Otto samt der verstecken Einstellungsdateien rekursiv ins Verzeichnis Sicherungen kopiert, welches sich auf dem eingehängten Laufwerk sda9 befindet.
cp -a /home/Otto/. /media/sda9/Sicherungen
Einige Distribution bieten cp mit der Option -g
an. Bei größeren Kopierzeiten wird ein Statusbalken angezeigt. Um dies in Ubuntu zu erreichen, muss man aber entweder einen sogenannten progress bar-Patch einpflegen oder auf Skripte oder gleich rsync zurückgreifen.