Cp: Unterschied zwischen den Versionen

Aus Foxwiki
MarcelSobol1 (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“
 
(87 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=Bezeichnung=
{{DISPLAYTITLE:cp}}
'''cp''' (copy) kopiert Dateien und Verzeichnisse. Dabei wird immer erst die Quelle und dann das Ziel angegeben.
'''cp''' ('''c'''o'''p'''y) kopiert Dateien und Verzeichnisse


=Übersicht=
== Beschreibung ==
Der grundlegende Syntax Befehl lautet: '''cp [Option] Quelle Ziel'''
Der Befehl '''cp''' kopiert eine oder mehrere Dateien in das angegebene Verzeichnis
* Existiert die Datei schon im Zieldirectory, wird sie überschrieben
* Dateien, die mit einem Punkt beginnen, müssen explizit angegeben werden


Bei der "Quelle" handelt es sich um das Element, welches kopiert werden soll. Als Ziel des Kopiervorgangs wird entweder eine Datei oder ein Verzeichnis definiert.  
== Installation ==
== Anwendung ==
=== Datei kopieren ===
* Falls das Ziel ein Dateipfad ist, wird die Quelle diesen Pfad haben. Existierende Dateien werden überschrieben.
* Falls das Ziel ein Verzeichnis ist, wird die Quelle darein platziert.


Die bereits vorhandene Datei wird als Zieldatei definiert und wird deren Inhalt mit dem der Quelldatei überschrieben. Alternativ hat man die Möglichkeit, die Zieldatei als neue Datei mit gewünschtem Namen zu erstellen.
=== Verzeichnis kopieren ===
* Verzeichnisse können nur mit der <code>-r</code> (rekursiv) Option kopiert werden.
* Um ein Verzeichnis zu kopieren, muss das Ziel ein vorhandenes Verzeichnis sein.
* Verzeichnisse werden in das Ziel kopiert.


Sollen mehrere Dateien kopiert werden, muss das Ziel ein Verzeichnis sein. Das gleiches gilt für den Fall, dass ein Verzeichnis kopiert wird.
Sollen mehrere Dateien kopiert werden, muss das Ziel ein Verzeichnis sein. Das gleiches gilt für den Fall, dass ein Verzeichnis kopiert wird.


=Optionen=
=== Beispiele ===
Eine Quelldatei in eine Zieldatei im aktuellen Verzeichnis kopieren:
cp datei.txt datei_kopie.txt


Eine Quelldatei aus dem aktuellen Verzeichnis in ein Zielverzeichnis kopieren:
cp datei.txt /home/user/dokumente/2020


{| class="wikitable"
Mehrere Quelldateien in ein Zielverzeichnis kopieren:
cp datei.txt datei.odt /home/user/dokumente/2020
 
Ein Quellverzeichnis aus dem aktuellen Verzeichnis in ein Zielverzeichnis kopieren:
cp verzeichnis1 /home/user/dokumente/2020
 
=== Beispiele ===
* 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 [http://wiki.ubuntuusers.de/mount eingehängten] Laufwerk '''sda9''' befindet.
cp -a /home/Otto/. /media/sda9/Sicherungen
 
=== Dateien/Ordner ausschließen ===
'''cp''' enthält keine --exclude-Option, jedoch biete die [http://wiki.ubuntuusers.de/Shell Shell] einen Weg, der es ermöglicht Muster auszuschließen.
* Dazu muss z.&nbsp;B.&nbsp;in bash die Shell-Option extglob gesetzt werden, die den erweiterten Musterabgleich aktiviert (extended [http://en.wikipedia.org/wiki/globbing globbing]):
* shopt -s extglob
* Der Befehl muss jedesmal ausgeführt werden oder man trägt ihn in die [http://wiki.ubuntuusers.de/Bash/bashrc bashrc] ein.
* Im Folgenden der angewandte cp-Befehl:
 
cp -av /QUELLE/!(Datei1.txt|Festplattenabbild*|Ordner/Unterordner1) /ZIEL/
 
* Durch das Muster !() werden alle Dateien '''und Ordner''', die mit ''"Datei1.txt''", ''"Festplattenabbild''" und ''"Unterorder1''" beginnen, ausgeschlossen. Darüber hinaus werden alle Dateien und Ordner von QUELLE nach ZIEL kopiert.
 
=== Fortschrittsanzeigen ===
Einige Distribution bieten '''cp''' mit der Option -g an. Bei größeren Kopierzeiten wird ein Statusbalken angezeigt. Um dies in zu erreichen, muss der ''progress bar''-Patch eingepflegt sein. Oder man greift auf Skripte oder [http://wiki.ubuntuusers.de/rsync rsync] zurück.
 
==== rsync ====
* Statt cp kann rsync zum Kopieren verwendet werden. rsync --progress -ah" zu verwenden.
* Das funktioniert zwar, ist aber kein vollwertiger Ersatz für "cp" mit allen seinen Aufrufparametern.
 
rsync -auh --partial --stats –progress quelle ziel
rsync -auh --partial --stats –progress quelle/ ziel/
 
==== Pipe Viewer ====
Auch der [http://www.ivarch.com/programs/pv.shtml Pipe Viewer] implementiert eine Fortschrittsanzeige, die sich in vielerlei Weise einsetzen lässt, aber er arbeitet nach dem Pipe-Prinzip, liest und schreibt also von den Standard-Kanälen.
$ '''pv Datei > neueDatei'''
 
==== gcp ====
* Die beste Lösung für das Problem scheint ein Programm namens "[http://wiki.goffi.org/wiki/Gcp/en gcp]" zu sein, das in Python geschrieben ist und zumindest Teil der Ubuntu- und Debian-Distributionen ist.
* Es zeigt den Fortschritt beim Kopieren an, bietet die wichtigsten Aufrufparameter von "cp" und noch ein paar weitere praktische Features wie die Anpassung von Dateinamen mit Sonderzeichen, Logging und Übertragungslisten.
* Seit 2003 das Patent EP0394160 ausgelaufen ist, das den Fortschrittsbalken patentiert, ist gcp patent-frei.
 
==== Advanced Copy ====
* Besonders nahtlos fügt sich Advanced Copy (http://beatex.org/web/advancedcopy.html) in den altbekannten Unix-Werkzeugkasten ein, denn es verändert die GNU-Tools "mv" und "cp" aus den Coreutils, die zumindest auf Linux-Distributionen zum Standardumfang gehören.
* Das Problem dabei ist, dass man die Coreutils selbst übersetzen muss. Schwierig ist das nicht, aber danach hat man zwei Binaries auf der Platte liegen, die nicht mehr Bestandteil der Paketverwaltung sind.
 
== Aufruf ==
$ '''cp·[Optionen]·QUELLE ZIEL'''
 
=== Optionen ===
{| class="wikitable options"
|-
|-
! Option !! Beschreibung
! Option !! Beschreibung
|-
|-
| -a oder --archive||Beibehaltung von Besitzer-, Gruppen- und Zugriffsrechten und Erstellungs-, Modifikations- und Zugriffsdaten
| -a oder --archive||Steht für „archive“. Mit diesem Schalter werden Zeitstempel, Besitzer, Gruppen, Dateirechte wie von der Quelle beibehalten.
|-
|-
| -b oder --backup||Sichert Dateien vor dem Überschreiben, wenn diese unterschiedlich sind
| -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)
| -d||erhält symbolische Links, folgt ihnen aber nicht beim Kopieren (entspricht -P --preserve=links)
|-
|-
| -i oder --interactive||fragt vor Überschreiben nach
| -f (force)|| Erzwinge Kopieren und entferne Zieldatei, falls nötig.
|-
| -i oder --interactive||fragt vor Überschreiben nach.
|-
| -H || symbolischen Verknüpfungen, die auf Kommandozeile als QUELLE angegeben folgen (Standardeinstellung)
|-
|-
| -l oder --link|| kopiert nicht, sondern erstellt harten Link
| -l oder --link|| kopiert nicht, sondern erstellt harten Link.
|-
|-
| -n oder --no-clobber||niemals vorhandene Dateien überschreiben (-i wird wirkungslos)
| -n oder --no-clobber||niemals vorhandene Dateien überschreiben (-i wird wirkungslos)
|-
|-
| -p (klein)||erhält Standard-Dateiattribute wie Zeitpunkt des letzten Schreibzugriffs
| -p (klein)||erhält Standard-Dateiattribute wie Zeitpunkt des letzten Schreibzugriffs.
|-
|-
| -P (groß)||Symbolische Links als symbolische Links kopieren, statt den Links in der Quelle zu folgen
| -P (groß)||Symbolische Links als symbolische Links kopieren, statt den Links in der Quelle zu folgen.
|-
|-
| -r oder -R oder --recursive||Verzeichnisse rekursiv kopieren (Unterverzeichnisse eingeschlossen)
| -r oder -R oder --recursive||Steht für „rekursiv“. Mit diesem Schalter werden alle Ordner und Unterordner inkl. Dateien kopiert. Also ganze Verzeichnisbäume.
|-
|-
| -s oder --symbolic-link||kopiert nicht, sondern erstellt symbolischen Link
| -s oder --symbolic-link||kopiert nicht, sondern erstellt symbolischen Link.
|-
|-
| -u oder --update||kopiert nur, wenn Zieldatei älter als Quelldatei
| -u oder --update||kopiert nur, wenn Zieldatei älter als Quelldatei.
|-
|-
| -v oder --verbose||Durchgeführte Tätigkeiten "erklären" / anzeigen
| -v oder --verbose||Steht für “verbose” und Zeigt alle Tätigkeiten an was der Befehl cp gerade durchführt.
|-
|-
| -x (one file-system)||Ignoriert Unterverzeichnisse, die in anderen Partitionen angesiedelt sind.
|}
|}
'''Zusatz Info:''' Im Gegensatz zum COPY-Befehl von DOS muß diesem Befehl immer ein Ziel angegeben werden. Sollen mehrere Dateien kopiert werden, so muß das Ziel ein Verzeichnis sein.


=Beispiel=
{| class="wikitable sortable options" 
Eine Quelldatei in eine Zieldatei im aktuellen Verzeichnis kopieren: cp [Optionen] Quelldatei Zieldatei <p style=“line-height: 80%“> Beispiel:''' cp datei.txt datei_kopie.txt'''</p>
|-
| | '''-a--archive '''
| | Beibehaltung von Besitzer-, Gruppen- und Zugriffsrechten und Erstellungs-, Modifikations- und Zugriffsdaten (entspricht -dR --preserve=all)
|-
| | '''-b--backup'''
| | Sichert Dateien vor dem Überschreiben, wenn diese unterschiedlich sind
|-
| | '''-d '''
| | (''no-dereference'') erhält [http://wiki.ubuntuusers.de/ln#Symbolische-Verknuepfungen symbolische Links], folgt ihnen aber nicht beim Kopieren (entspricht -P --preserve=links)
|-
| | '''-f '''
| | (''force'') Dateien im Zielverzeichnis werden überschrieben
|-
| | '''-i --interactive'''
| | (''interactive'') erwartet Bestätigung vor dem Überschreiben bereits existierender Dateien
|-
| | '''-l --link'''
| | (link) erstellt harte macht Links anstelle von Kopien (nur bei normalen Dateien)
|-
| | '''-n--no-clobber '''
| | niemals vorhandene Dateien überschreiben (-i wird wirkungslos)
|-
| >'''-P '''
| | (''path'') die Quelldateien werden mit Pfad relativ zum Zielverzeichnis kopiert
|-
| >'''-p '''
| | (''preserve'') erhält die Zugriffsrechte und Eigentümer des Originals (nicht die SUID und SGID Bit)
|-
| >--no-dereference '''
| | niemals symbolischen Links in der Quelle folgen
|-
| >--preserve=mode,ownership,timestamps'''
| | erhält Standard-Dateiattribute, wie Zeitpunkt des letzten Schreibzugriffs
|-
| | '''-r -R'''


'''--recursive'''
| | (''recursive'') kopiert rekursiv alle Dateien der Unterverzeichnisse (auch Devices und Links) wie normale Dateien
|-
| | '''-s '''
| |
|-
| | '''-S Endung '''
| | (''suffix'') sichert die Dateien vor dem Überschreiben durch Umbenennung mit der Endung; Voreinstellung ist `~'
|-
| | '''-s --symbolic-link'''
| | (''symbolic link'') erstellt symbolische Links anstelle von Kopien (absolute Pfadnamen)
|-
| | '''-u --update'''
| | (''update'') kopiert (überschreibt) nur, wenn Zieldatei älter als Quelldatei
|-
| | '''-v --verbose'''
| | zeigt den Kopierfortschritt an
|-
| | '''-x '''
| | (''one file-system'') ignoriert Unterverzeichnisse, die in anderen Dateisystemen angesiedelt sind
|-
|}


Eine Quelldatei aus dem aktuellen Verzeichnis in ein Zielverzeichnis kopieren: cp [Optionen] Quelldatei Zielverzeichnis <p style=“line-height: 80%“> Beispiel:'''cp datei.txt /home/user/dokumente/2020
* cp kennt noch eine Reihe von weiteren Optionen, die man mit Hilfe der Option --help aufrufen kann. Oder man schaut in die [http://wiki.ubuntuusers.de/man Manpages] von cp.
 
* Der Anhang für Sicherheitskopien ist ~, außer wenn er --suffix oder SIMPLE_BACKUP_SUFFIX gesetzt wurde.  
 
* Die Versionskontrolle kann mit --backup oder VERSION_CONTROL gesetzt werden. Mögliche Werte sind:  
Mehrere Quelldateien in ein Zielverzeichnis kopieren: cp [Optionen] Quelldatei1 Quelldatei2 Zielverzeichnis <p style=“line-height: 80%“> Beispiel:'''cp datei.txt datei.odt /home/user/dokumente/2020
 
 
Ein Quellverzeichnis aus dem aktuellen Verzeichnis in ein Zielverzeichnis kopieren: cp Quellverzeichnis Zielverzeichnis <p style=“line-height: 80%“> Beispiel:'''cp verzeichnis1 /home/user/dokumente/2020


{| class="wikitable sortable options" 
|-
| | '''none, off'''
| | Niemals Sicherung erzeugen (selbst wenn --backup angegeben wurde)
|-
| | '''numbered, t'''
| | Erzeugen von nummerierten Sicherheitskopien
|-
| | '''existing, nil'''
| | Nummeriert wenn nummerierte Backups existieren, sonst einfach.
|-
| | '''Simple, never'''
| | Immer einfache Sicherheitskopien erzeugen
|-
|}


Zusatz Info: sollen Verzeichnisse inklusive aller Inhalte kopiert werden, müssen alle Unterverzeichnisse mithilfe der ''' Option -r''' in den Kopiervorgang eingeschlossen werden.
=== Parameter ===
=== Umgebung ===
=== Rückgabewert ===
== Konfiguration ==
=== Dateien ===
== Sicherheit ==
== Dokumentation ==
=== RFC ===
=== Man-Page ===
=== Info-Pages ===


== Siehe auch ==
# [[dd]]


cp [Optionen] Quellendatei Zielverzeichnis
== Links ==
<font color=#24A523> Hallo </font>
=== Projekt ===
=== Weblinks ===
# https://wiki.ubuntuusers.de/cp/




cp ~/Dokumente/dateiname ~/Downloads/    (kopieren von Dokumente zu Downloads)
cp ~/Downloads/dateiname ~/Dokumente/    (kopieren von Downloads zu Dokumente)


[[Category:Linuxbefehle]]
[[Kategorie:Linux/Befehl]]
[[Category:Linux]]
[[Kategorie:Linux/Datei/Verwaltung]]
[[Category:Linux:LPIC:101]]
[[Kategorie:Coreutils]]
{{DEFAULTSORT:cp}}

Aktuelle Version vom 12. November 2024, 18:41 Uhr

cp (copy) kopiert Dateien und Verzeichnisse

Beschreibung

Der Befehl cp kopiert eine oder mehrere Dateien in das angegebene Verzeichnis

  • Existiert die Datei schon im Zieldirectory, wird sie überschrieben
  • Dateien, die mit einem Punkt beginnen, müssen explizit angegeben werden

Installation

Anwendung

Datei kopieren

  • Falls das Ziel ein Dateipfad ist, wird die Quelle diesen Pfad haben. Existierende Dateien werden überschrieben.
  • Falls das Ziel ein Verzeichnis ist, wird die Quelle darein platziert.

Verzeichnis kopieren

  • Verzeichnisse können nur mit der -r (rekursiv) Option kopiert werden.
  • Um ein Verzeichnis zu kopieren, muss das Ziel ein vorhandenes Verzeichnis sein.
  • Verzeichnisse werden in das Ziel kopiert.

Sollen mehrere Dateien kopiert werden, muss das Ziel ein Verzeichnis sein. Das gleiches gilt für den Fall, dass ein Verzeichnis kopiert wird.

Beispiele

Eine Quelldatei in eine Zieldatei im aktuellen Verzeichnis kopieren:

cp datei.txt datei_kopie.txt

Eine Quelldatei aus dem aktuellen Verzeichnis in ein Zielverzeichnis kopieren:

cp datei.txt /home/user/dokumente/2020

Mehrere Quelldateien in ein Zielverzeichnis kopieren:

cp datei.txt datei.odt /home/user/dokumente/2020

Ein Quellverzeichnis aus dem aktuellen Verzeichnis in ein Zielverzeichnis kopieren:

cp verzeichnis1 /home/user/dokumente/2020

Beispiele

  • 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

Dateien/Ordner ausschließen

cp enthält keine --exclude-Option, jedoch biete die Shell einen Weg, der es ermöglicht Muster auszuschließen.

  • Dazu muss z. B. in bash die Shell-Option extglob gesetzt werden, die den erweiterten Musterabgleich aktiviert (extended globbing):
  • shopt -s extglob
  • Der Befehl muss jedesmal ausgeführt werden oder man trägt ihn in die bashrc ein.
  • Im Folgenden der angewandte cp-Befehl:
cp -av /QUELLE/!(Datei1.txt|Festplattenabbild*|Ordner/Unterordner1) /ZIEL/
  • Durch das Muster !() werden alle Dateien und Ordner, die mit "Datei1.txt", "Festplattenabbild" und "Unterorder1" beginnen, ausgeschlossen. Darüber hinaus werden alle Dateien und Ordner von QUELLE nach ZIEL kopiert.

Fortschrittsanzeigen

Einige Distribution bieten cp mit der Option -g an. Bei größeren Kopierzeiten wird ein Statusbalken angezeigt. Um dies in zu erreichen, muss der progress bar-Patch eingepflegt sein. Oder man greift auf Skripte oder rsync zurück.

rsync

  • Statt cp kann rsync zum Kopieren verwendet werden. rsync --progress -ah" zu verwenden.
  • Das funktioniert zwar, ist aber kein vollwertiger Ersatz für "cp" mit allen seinen Aufrufparametern.
rsync -auh --partial --stats –progress quelle ziel
rsync -auh --partial --stats –progress quelle/ ziel/

Pipe Viewer

Auch der Pipe Viewer implementiert eine Fortschrittsanzeige, die sich in vielerlei Weise einsetzen lässt, aber er arbeitet nach dem Pipe-Prinzip, liest und schreibt also von den Standard-Kanälen.

$ pv Datei > neueDatei

gcp

  • Die beste Lösung für das Problem scheint ein Programm namens "gcp" zu sein, das in Python geschrieben ist und zumindest Teil der Ubuntu- und Debian-Distributionen ist.
  • Es zeigt den Fortschritt beim Kopieren an, bietet die wichtigsten Aufrufparameter von "cp" und noch ein paar weitere praktische Features wie die Anpassung von Dateinamen mit Sonderzeichen, Logging und Übertragungslisten.
  • Seit 2003 das Patent EP0394160 ausgelaufen ist, das den Fortschrittsbalken patentiert, ist gcp patent-frei.

Advanced Copy

  • Besonders nahtlos fügt sich Advanced Copy (http://beatex.org/web/advancedcopy.html) in den altbekannten Unix-Werkzeugkasten ein, denn es verändert die GNU-Tools "mv" und "cp" aus den Coreutils, die zumindest auf Linux-Distributionen zum Standardumfang gehören.
  • Das Problem dabei ist, dass man die Coreutils selbst übersetzen muss. Schwierig ist das nicht, aber danach hat man zwei Binaries auf der Platte liegen, die nicht mehr Bestandteil der Paketverwaltung sind.

Aufruf

$ cp·[Optionen]·QUELLE ZIEL

Optionen

Option Beschreibung
-a oder --archive Steht für „archive“. Mit diesem Schalter werden Zeitstempel, Besitzer, Gruppen, Dateirechte wie von der Quelle beibehalten.
-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)
-f (force) Erzwinge Kopieren und entferne Zieldatei, falls nötig.
-i oder --interactive fragt vor Überschreiben nach.
-H symbolischen Verknüpfungen, die auf Kommandozeile als QUELLE angegeben folgen (Standardeinstellung)
-l oder --link kopiert nicht, sondern erstellt harten Link.
-n oder --no-clobber niemals vorhandene Dateien überschreiben (-i wird wirkungslos)
-p (klein) erhält Standard-Dateiattribute wie Zeitpunkt des letzten Schreibzugriffs.
-P (groß) Symbolische Links als symbolische Links kopieren, statt den Links in der Quelle zu folgen.
-r oder -R oder --recursive Steht für „rekursiv“. Mit diesem Schalter werden alle Ordner und Unterordner inkl. Dateien kopiert. Also ganze Verzeichnisbäume.
-s oder --symbolic-link kopiert nicht, sondern erstellt symbolischen Link.
-u oder --update kopiert nur, wenn Zieldatei älter als Quelldatei.
-v oder --verbose Steht für “verbose” und Zeigt alle Tätigkeiten an was der Befehl cp gerade durchführt.
-x (one file-system) Ignoriert Unterverzeichnisse, die in anderen Partitionen angesiedelt sind.

Zusatz Info: Im Gegensatz zum COPY-Befehl von DOS muß diesem Befehl immer ein Ziel angegeben werden. Sollen mehrere Dateien kopiert werden, so muß das Ziel ein Verzeichnis sein.

-a--archive Beibehaltung von Besitzer-, Gruppen- und Zugriffsrechten und Erstellungs-, Modifikations- und Zugriffsdaten (entspricht -dR --preserve=all)
-b--backup Sichert Dateien vor dem Überschreiben, wenn diese unterschiedlich sind
-d (no-dereference) erhält symbolische Links, folgt ihnen aber nicht beim Kopieren (entspricht -P --preserve=links)
-f (force) Dateien im Zielverzeichnis werden überschrieben
-i --interactive (interactive) erwartet Bestätigung vor dem Überschreiben bereits existierender Dateien
-l --link (link) erstellt harte macht Links anstelle von Kopien (nur bei normalen Dateien)
-n--no-clobber niemals vorhandene Dateien überschreiben (-i wird wirkungslos)
>-P (path) die Quelldateien werden mit Pfad relativ zum Zielverzeichnis kopiert
>-p (preserve) erhält die Zugriffsrechte und Eigentümer des Originals (nicht die SUID und SGID Bit)
>--no-dereference niemals symbolischen Links in der Quelle folgen
>--preserve=mode,ownership,timestamps erhält Standard-Dateiattribute, wie Zeitpunkt des letzten Schreibzugriffs
-r -R

--recursive

(recursive) kopiert rekursiv alle Dateien der Unterverzeichnisse (auch Devices und Links) wie normale Dateien
-s
-S Endung (suffix) sichert die Dateien vor dem Überschreiben durch Umbenennung mit der Endung; Voreinstellung ist `~'
-s --symbolic-link (symbolic link) erstellt symbolische Links anstelle von Kopien (absolute Pfadnamen)
-u --update (update) kopiert (überschreibt) nur, wenn Zieldatei älter als Quelldatei
-v --verbose zeigt den Kopierfortschritt an
-x (one file-system) ignoriert Unterverzeichnisse, die in anderen Dateisystemen angesiedelt sind
  • 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.
  • Der Anhang für Sicherheitskopien ist ~, außer wenn er --suffix oder SIMPLE_BACKUP_SUFFIX gesetzt wurde.
  • Die Versionskontrolle kann mit --backup oder VERSION_CONTROL gesetzt werden. Mögliche Werte sind:
none, off Niemals Sicherung erzeugen (selbst wenn --backup angegeben wurde)
numbered, t Erzeugen von nummerierten Sicherheitskopien
existing, nil Nummeriert wenn nummerierte Backups existieren, sonst einfach.
Simple, never Immer einfache Sicherheitskopien erzeugen

Parameter

Umgebung

Rückgabewert

Konfiguration

Dateien

Sicherheit

Dokumentation

RFC

Man-Page

Info-Pages

Siehe auch

  1. dd

Links

Projekt

Weblinks

  1. https://wiki.ubuntuusers.de/cp/