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

Hauptartikel: 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

  • mv (Unix) verschiebt Dateien oder benennt sie um und wird mit weitgehend identischer Syntax aufgerufen …
  • … ähnlich ln (Unix) zum Erzeugen von Links.
  • Absatz Dateioperationen im Artikel Unix-Kommandos
Wikibooks: Linux-Praxisbuch/ cp – Lern- und Lehrmaterialien
  • cp(1): copy files – Open Group Base Specification
  • cp(1): copy files – OpenBSD General Commands Manual
  • cp(1): Dateien und Verzeichnisse kopieren – Debian GNU/Linux Ausführbare Programme oder Shell-Befehle Handbuchseite
  • cp.c Quellcode für GNU/Linux-cp aus coreutils 8.13
Dateien

chgrp | chown | chmod | cp | dd | df | dir | dircolors | install | ln | ls | mkdir | mkfifo | mknod | mv | rm | rmdir | shred | sync | touch | vdir

Text

awk | cat | cksum | comm | csplit | cut | expand | fmt | fold | head | join | md5sum | nl | od | paste | ptx | pr | sha1sum | sed | sort | split | sum | tac | tail | tr | tsort | unexpand | uniq | wc

Shell

basename | chroot | date | dirname | du | echo | env | expr | factor | false | groups | hostid | id | link | logname | nice | nohup | pathchk | pinky | printenv | printf | pwd | readlink | seq | sleep | stat | stty | tee | test | true | tty | uname | unlink | users | who | whoami | yes