rsync - как исключить папку при наличии нескольких источников? - PullRequest
0 голосов
/ 16 февраля 2019

Я пытаюсь сделать резервную копию нескольких каталогов с помощью rsync, используя опцию --exclude.

Я знаю, что пути --exclude должны быть относительно пути к источнику, но что происходит при наличии нескольких источников?

Допустим, я хочу сделать резервную копию /home/user/source_a и /home/user/source_b, но хочу исключить /home/user/source_a/something.

Когда я пишу --exclude=/something, будут одновременно /home/user/source_a/something и /home/user/source_b/somethingбыть исключенным (если есть /home/user/source_b/something)?

1 Ответ

0 голосов
/ 17 февраля 2019

Я, очевидно, неправильно понял ваш вопрос - поэтому моя первая версия моего ответа ожидала, что вы захотите исключить каталог что-то в обоих источниках.В этом случае необходимо было использовать косую черту в источниках.

Чтобы исключить только / home / user / source_a / что-то ( not / home / user / source_b /что-то), как уточнено в вашем комментарии, вы должны подняться на уровень выше, чтобы rsync знал о различных источниках.Тогда ваша команда rsync будет выглядеть так:

rsync -a --exclude=/source_a/something /home/user/source_a /home/user/source_b /target

Простое удаление косой черты в источниках также приведет к переносу каталогов source_a и source_b.Поэтому теперь можно исключить путь из определенного источника.

...