polecenie cp, zignoruj ​​niezmienione pliki


10

Czy istnieje sposób na wykonanie, cpale ignorowanie plików, które mogą już istnieć w miejscu docelowym, które nie są starsze niż pliki u źródła.

Zasadniczo chcę skopiować zawartość jednego dysku na inny, a następnie ponownie uruchomić kopię, ale tylko aktualizować nowe pliki lub pliki, które zostały zaktualizowane po stronie źródłowej.

Dzięki

Odpowiedzi:


17

Użyj tego:

rsync -a /source /destination

Alternatywnie możesz uzyskać więcej szczegółów za pomocą kilku innych flag, takich jak -vlub --progress.


1
Chcę dodać, że możesz używać również rsyncprzez sieć. Jest to szczególnie łatwe przy użyciu ssh. W przypadku źródłowego lub docelowego miejsca docelowego dodaj go user@host:i zrobi to samo. Będzie to zastępowaćscp
— UtahJarhead

9

ze strony cpman:

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

Właśnie to znalazłem, szukałem niewłaściwej wersji strony man cp. Nie!
— Ben Everard

6

Użyj rsync, problem rozwiązany.

rsync -av /srcdir /tgtdir
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.