Cp

Aus Foxwiki

Definition: cp

  • cp steht für "copy" kopiert Dateien und Verzeichnisse.

Anwendung von cp

  • cp [Option] QUELLE ZIEL um eine Datei zu kopieren.
  • cp -r [Option] QUELLE ZIEL um ein Verzeichnis zu kopieren.
  • cp [Option] QUELLE1 QUELLE2 QUELLE3... ZIEL um mehrere Quellen zu kopieren.

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 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.

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.
-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 Dateisystemen 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

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

Zwei Dateinamen

  • Wenn eine Quell- und Zieldatei angegeben wird, wird die Zieldatei erst erstellt und dann der Inhalt kopiert.
  • Falls die Zieldatei schon existiert, wird sie ohne zu fragen überschreiben. Mit -i wird man gefragt.

Ein oder mehrere Verzeichnisse

  • Um mehrere Dateien in einem Ordner zu kopieren, zählt man die Dateien hintereinander auf.
  • Falls im Ordner gleichbennante Dateien enthalten werden sie ungefragt überschrieben.
  • Das Zielverzeichnis muss vorher Vorhandensein.
cp test1.txt test2.txt Zielverzeichnis

Zwei Verzeichnisnamen

Enthält der Befehl zwei Verzeichnisnamen enthält, kopiert cp alle Dateien des Quellverzeichnisses in das Zielverzeichnis und erstellt dabei alle benötigten Dateien oder Verzeichnisse. dafür wird -r benötigt. Existiert das Zielverzeichnis schon, wird Unterordner mit dem Namen des Quellverzeichnis erstellt.

cp -r Quellverzeichnis Zielverzeichnis
cp -r Folder1 Folder2

Quelle

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