Cp (Unix)

cp (für copy) ist ein interner Befehl einer Unix-Shell zum Kopieren von Dateien bei Unix- oder unixoiden Betriebssystemen auf Computern.

Verwendung

Die Syntax ist sehr einfach gehalten; üblicherweise wird eine Datei von quelldatei zu zieldatei kopiert, in dem man

cp [Optionen] quelldatei zieldatei

eingibt. Mehrere Dateien können kopiert werden, indem alle Dateinamen angegeben werden, anschließend das Zielverzeichnis:

cp [Optionen] quelldateizielverzeichnis

Damit ist z. B. die Verwendung von Wildcards möglich, welche moderne Unix-Shells üblicherweise zur Verfügung stellen. So kopiert

cp bild*.jpg ziel/

z. B. die Dateien bild1.jpg, bild234.jpg oder bild_abc.jpg in das Verzeichnis ziel, wenn die verwendete Shell das Wildcard * expandiert.

Netzwerkfähige Alternativen

Aus dem traditionellen Unix-Werkzeug haben sich einige Programme entwickelt, die Dateien über das Rechnernetz von einem Unix-Rechner zum nächsten kopieren und sich dabei in ihrer syntaktischen Verwendung stark an das Programm cp anlehnen.

rcp, ssh

Eine Erweiterung des cp-Programms ist das rcp-Programm, welches für die Verwendung in Netzwerken (remote copy) geschaffen wurde.

Die Syntax ist:

rcp <Dateiname> <entfernter Benutzer@entfernter Rechner:/Verzeichnis/Dateiname>

Aufgrund prinzipbedingter Sicherheitsprobleme – die Dateien werden unverschlüsselt übertragen – wird von rcp dringendst abgeraten und stattdessen die Verwendung des Nachfolgers scp aus der SSH-Familie empfohlen.

rsync

Wenn es darum geht, zwei Verzeichnisse abzugleichen und nur Änderungen zu kopieren, ist rsync ein weit verbreiteter Ersatz für den Befehl cp. Er kann sowohl lokal als auch über das Netzwerk benutzt werden. Beim Kopieren über das Netzwerk kann eine Verschlüsselung mit SSH durchgeführt werden.

Siehe auch

Wikibooks: Linux-Praxisbuch/ cp – Lern- und Lehrmaterialien