Oft frage ich mich, warum sich all die Benutzer das mühsame Drag and Drop überhaupt antun. Manchmal ist man schneller mit dem Finder, aber vielfach ist man bereits fertig mit kopieren, bevor man mit dem Finder überhaupt am richtigen Ort ist. Es ist ganz einfach:
Terminal starten.
andy@thinkpink:~$ cp datei1 datei2
Der regelmässige Leser erkennt sogleich, dass ich fremd gehe und nicht apfelschwein benutze. Arbeiten am Laptop finde ich einfach angenehmer. Liegt vielleicht am Betriebssystem 😉
Nun zurück zum Thema. cp steht für copy (wer hätte das gedacht) und die Syntax geht folgendermassen:
cp datei1 kopie-von-datei1
cp datei1 datei2 datei3 datein zielverzeichnis
Wenn ich einen ganzen Ordner mit Dateien und Unterverzeichnissen kopieren möchte, verwende ich:
cp -r verzeichnis1 zielverzeichnis
-r steht für rekursiv.
Wenn ich eine exakte Kopie (gleiche Berechtigungen, gleicher Timestamp, etc.) der Dateien machen will, dann verwende ich diese Option:
cp -a verzeichnis1 zielverzeichnis
Grundsätzlich gilt bei Unix Befehlen, dass der Benutzer genau weiss was sie/er macht, denn eine Sicherheitsabfrage „Möchten Sie die Datei überschreiben“ gibt es nicht. Es sei denn, man verwendet den Parameter -i im Befehl. Aber der muss in der Regel explizit angegeben werden.
Noch ein paar Beispiele:
Kopiere alle PDF-Dateien in /tmp nach /home/andy/docs/
cp /tmp/*.pdf ~/docs/
Kopiere gibtsschon.txt von /tmp nach /var/tmp. Falls die Datei bereits existiert, kommt eine Abfrage, ob die Datei überschrieben werden soll:
cp -i /tmp/gibtsschon.txt /var/tmp/
Kopiere Verzeichnis ichbineinverzeichnis inklusive aller Unterverzeichnisse von /tmp nach /var/tmp/:
cp -r /tmp/ichbineinverzeichnis/ /var/tmp/
oder wenn ich Berechtigungen, Timestamps, etc. beibehalten will, so:
cp -a /tmp/ichbineinverzeichnis/ /var/tmp/
« Inhalt des Dateisystems mit ls anzeigen Wie bringe ich die CD aus meinem Mac? »