Unix-Äquivalent zu XCOPY / D

3

Windows hat eine nette Option zu seinem XCOPY-Befehl: / D. Hiermit werden nur Dateien kopiert, deren Quelländerungszeit neuer als die Zielzeit ist. Gibt es ein Unix / Linux-Äquivalent dazu? Ich versuche eine schnelle Kopie auf meinen lokalen Testserver zu bekommen.

Cassidy Laidlaw
quelle
Dies sollte unter SuperUser abgefragt werden, da es nichts mit Programmierung zu tun hat.
SLaks

Antworten:

7

Normalerweise mache ich:

rsync -avz /from/where/ /to/dest/

Wenn Sie möchten, dass Dateien gelöscht werden, die in / from / where nicht mehr existieren, fügen Sie hinzu --löschen .

Es kann auch aus verschiedenen Boxen wie folgt verwendet werden:

rsync -avz [email protected]:/from/where/ [email protected]:/to/dest/
Eduardo Romero
quelle
Normalerweise würde ich dem letzten "-e ssh" hinzufügen. Ich mag es nicht, einen Rsync-Server zu betreiben, weil er nicht sicher genug ist.
Paul Tomblin
Ich hatte den Eindruck, dass rsync standardmäßig ssh verwendet. Ich denke, Sie brauchen zwei Doppelpunkte, um einen Rsync-Server anzugeben.
Ryan Thompson
Oh ja, vielleicht möchten Sie die Option --update aktivieren, wenn Sie keine neueren Dateien im Ziel überschreiben möchten, sondern nur ältere. Dies hängt davon ab, ob Sie die beiden Verzeichnisse nur effizient synchronisieren möchten oder ob Sie das oben beschriebene genaue Verhalten mit Änderungszeiten wünschen.
Ryan Thompson
Ja, standardmäßig wird ssh verwendet. Müssen Sie weitere "Optionen" für Rsync hinzufügen. Lustig, oder?
Eduardo Romero
9
cp --update src dest

Von der Manpage:

Kopieren Sie nur, wenn die SOURCE-Datei neuer als die Zieldatei ist oder wenn die Zieldatei fehlt

Brett Daniel
quelle
2

Mein Gehirn konnte die Komplexität von rsync nicht ganz bewältigen, also habe ich es installiert Glückliches Backup . Dies bietet eine benutzerfreundliche grafische Oberfläche als Front-End für Rsync. Wenn Sie Ihre Kopier- / Sicherungsaufgabe eingerichtet haben, können Sie sie über das Programm ausführen. Sie können auch auf die Schaltfläche "Validieren" für die Aufgabe klicken, um die vollständige rsync-Befehlszeile anzuzeigen, sodass Sie sie in einem Terminal ausführen oder in ein Shell-Skript einfügen können. Es ist ein nützliches Tool, um die Verwendung von rsync zu lehren.

Screen Shot of Lucky Backup

Durch Klicken auf die Schaltfläche "Erweitert" im Fenster "Aufgabeneigenschaften" erhalten Sie Zugriff auf einige Funktionen von rsync.

Gannet
quelle
1
Können Sie Ihre Antwort mit einigen Screenshots erweitern? Ihre Antwort liest sich ein bisschen wie Spam.
bwDraco
Ich habe versucht, einen Screenshot hinzuzufügen, aber das System verlangte, dass ich mindestens 10 Reputationen hatte! Ich habe stattdessen einen Link hinzugefügt.
Gannet