Подтвердить что ты не робот

Запретить rsync удалять файлы назначения, соответствующие заданному шаблону

Я использую rsync для синхронизации файлов из источника в пункт назначения:

rsync -av --delete source destination

У меня есть единственный каталог на стороне адресата, который не находится на стороне источника. Я хочу, чтобы rsync не удалял этот каталог. Есть ли опция, которую я могу передать rsync, чтобы предотвратить удаление этого каталога при синхронизации?

4b9b3361

Ответ 1

Вы можете исключить файлы/каталоги с помощью --exclude. Это предотвратит синхронизацию/удаление каталога somedir:

rsync -avrc --delete --exclude somedir source destination

Ответ 2

Как упоминалось в подобном вопросе, это можно выполнить, используя опцию --filter с правилом protect:

$ rsync ... --filter 'protect /remote-directory-to-keep/' ...

В отличие от принятого в настоящее время ответа, использование --filter полезно, например, если вы также хотите использовать --exclude с --delete-excluded.