Befehl cp, unveränderte Dateien ignorieren


10

Gibt es eine Möglichkeit, dies zu tun, cpaber alle Dateien zu ignorieren, die möglicherweise bereits am Ziel vorhanden sind und nicht älter als die Dateien an der Quelle sind?

Grundsätzlich möchte ich den Inhalt einer Festplatte auf eine andere kopieren und dann die Kopie erneut ausführen, aber nur neue Dateien oder Dateien aktualisieren, die auf der Quellseite aktualisiert wurden.

Vielen Dank

Antworten:


17

benutze das:

rsync -a /source /destination

Alternativ können Sie weitere Details mit einigen anderen Flags wie -voder erhalten --progress.


Ich möchte hinzufügen, dass Sie auch rsyncüber das Netzwerk verwenden können. Dies ist besonders einfach ssh. Entweder für die Quelle oder Ziel, prepend es mit user@host:und es wird genau das tun. Dies wird als Ersatz fürscp
UtahJarhead

9

von der cpManpage:

   -u, --update
          copy only when the SOURCE file is newer than the destination file or when  the
          destination file is missing

Habe gerade auch das gefunden, habe auf der Manpage nach der falschen Version von gesucht cp. D'oh!
Ben Everard

6

Verwenden Sie rsync, Problem gelöst.

rsync -av /srcdir /tgtdir
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.