L i n u x    B e f e h l    cp

Kommando cp: Dateien, Verzeichnisse kopieren (Copy files, folders)

ANLASS:
Wenn Daten zum ersten Mal (keine Synchronisation) auf eine externe Festplatte gesichert werden, achte ich darauf, dass Merkmale von Dateien und Verzeichnissen unverändert bleiben: Datum (der Erstellung, der letzten Änderung), Zugriffsrechte (permission bits), Durchführbarkeit (execution bits). GUI-Tools (wie OSX- Finder) übertragen sie nicht eins zu eins.

LÖSUNG:
Daher habe ich ein einfaches bash-Skript geschrieben, das im Grunde nur folgendes Kommando ausführt (Ein Kommando bzw. eine Zeile pro zu kopierendes Wurzelverzeichnis):

SYNTAX: cp -an {Quellenverzeichnis_Name} {Zielverzeichnis_Name}

Option Bedeutung
a Sie entspricht den Optionen -pPR
p preserve attributes
Die ursprünglichen Werte folgender Merkmale werden beibehalten: Zeitpunkt der letzten Änderung, Zeitpunkt des letzten Zugriffs, User-ID, Gruppen-ID, Zugriffskontrollliste (Access Control List), file flags, file mode.
P Symbolische Links (Dateien) werden als solche kopiert (und nicht weiter verfolgt).
R Rekursives Kopieren
Alle Unterverzeichnisse werden kopiert.
Beachte: Gilt diese Option, werden die symbolischen Links nicht weiter verfolgt - es sei denn ausdrücklich bestimmt (Option H).
n Wenn das Kopieren auf das Zielverzeichnis das Löschen einer Datei impliziert, wird das Kopieren abgebrochen.
v verbose
Die kopierten Dateien werden aufgelistet (wenn man sich nicht ganz sicher darüber ist, was geschieht).
Tab. Optionen von cp