Rsync змінював лише файли


14

Чи можливо rsyncперенести всі файли в каталог, які змінилися або були створені? Мені не потрібне щось настільки складне, як перевірка CRC diff; Файли з різними часовими позначками та / або розмірами файлів вважаються змінами.

Зі сторінки man створюється враження, що це має бути можливо, але мені потрібно невелике керівництво щодо того, який набір параметрів потрібно пройти rsync.

Відповіді:


19

Просто синхронізувати два каталоги:

$ rsync /source/path/* /dest/path/

Або якщо ви хочете зробити ціле дерево:

$ rsync -a /source/path/ /dest/path/

"-a" вказує режим "архіву", де він дублює дерево якомога ближче.

Мені подобається додавати прапори vі Pтуди, щоб я міг спостерігати, як це працює:

$rsync -avP /source/path/ /dest/path/

"-v" включається багатослівний режим, тож ви можете бачити, що він робить (він перераховує файли під час їх копіювання), а "-P" дає змогу прогресувати, тож ви можете бачити, скільки часу потрібно копіювати кожен файл (відсоток скопійовано, час, що залишився тощо), і дозволяє вам бачити, як далеко ви перебуваєте через копію.


3
... і, можливо, додайте прапор z, щоб використовувати компресію для передачі
Linker3000

4
... якщо ви
переїжджаєте

14

Так rsyncпрацює за замовчуванням (принаймні, в Linux). Від людини сторінці :

Rsync знаходить файли, які потрібно перенести за допомогою алгоритму «швидкої перевірки» (за замовчуванням), який шукає файли, які змінилися за розміром або за останній час. Будь-які зміни в інших збережених атрибутах (за запитом опцій) вносяться безпосередньо в файл призначення, коли швидка перевірка показує, що дані файлу не потрібно оновлювати.


Ах, я плутав себе, неправильно читаючи документацію. Дякую :)
instanceofTom
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.