Что касается синхронизирующих частей вашего списка - поскольку вы хотите передавать двунаправленно - вы также можете взглянуть на унисон, который похож, но отличается от rsync. Вы можете запустить его до и после вашей команды, и он будет синхронизировать обе стороны.
Аналогичен rsync:
- транспорт через SSH (а также местный и другие)
- Дифференциальный перенос под капотом, если части файлов одинаковы, их не нужно передавать полностью, но передаются только измененные (или разные) части и восстанавливается весь файл с другой стороны, что очень полезно для уменьшения использование полосы пропускания
Отличается от rsync:
- нужен unsion на обоих концах - и он очень требователен к номеру версии unison
- Двунаправленная синхронизация: синхронизирует файлы, измененные с момента последней синхронизации на одном конце, с другого - и определяет, были ли оба изменения изменены, или либо игнорирует их, либо позволяет выбрать
- текстовый и графический интерфейс для интерактивного использования, а также неинтерактивный режим
Если вы хотите сделать направление копирования явным, я бы также предложил rsync, как это сделал jvb в https://superuser.com/a/1219619/738892 - также начиная с --dry-run
(или -n
для краткости) очень полезно. Также важен комментарий Atties по поводу косых черт : начните с -av
для копирования каталога (с выводами - чтобы увидеть, что происходит).
Вы можете или не можете использовать --del
и друзей, в зависимости от того, хотите ли вы удалить файлы, которые исчезли из SRC в DEST. В зависимости от вашего случая использования --update
(файлы пропускаются, которые новее на DEST), может быть полезным для вас.