Форум системных администраторов

IT => Unix => Тема начата: v4567 от 31 мая 2017, 21:37:42

Название: rsync синхронизация папок
Отправлено: v4567 от 31 мая 2017, 21:37:42
Есть две папки dir1 и dir2

В dir2 файлы всё время прибавляются и обновляются.

Необходимо в dir1 удалить старые файлы  - (старее некоторого времени), обновить оставшиеся и загрузить новые не загрузив при этом те которые были удалены ранее в dir1.

Можно сделать двумя командами:
find /dir1 -type f -mtime +5 -delete
find /dir2 -type f -mtime -5 | xargs -n 1 -I % cp  -fdp "%"  /dir1

но тогда  cp перезапишет и не обновлённые файлы, а это лишнее время. Если вместо второй строки использовать rsync то она запишет и те файлы которые не нужны, старые по времени которые были удалены при помощи find - первая строка.

Как перезаписать только те файлы которые обновились и записать новые?
Название: rsync синхронизация папок
Отправлено: v4567 от 31 мая 2017, 22:26:35
Что то я совсем.........
надо вот так:
find /dir1 -type f -mtime +5 -delete
find /dir2 -type f -mtime -5 | xargs -n 1 -I % rsync --progress "%" /dir1

Всё вопрос закрыт.