Назад | Перейти на главную страницу

Использование сценария оболочки для проверки внесения изменений в rsync

У меня есть сценарий bash, который содержит два каталога rsync. Иногда случаются изменения, но, скорее всего, ничего нет.

Я хочу запустить команду только в том случае, если rsync действительно внес изменения (добавил / обновил файл). В противном случае я просто хочу пропустить это. Есть ли ответный ответ, на который мне следует посмотреть?

Если вы используете опцию -i (и не используете опцию -v), rsync будет печатать только строки в STDOUT для любых внесенных изменений. В зависимости от вашего сценария это может выглядеть как

if [ -n "$(rsync -i /dir1 /dir2)" ]; then
  run_command;
fi