рекурсивно синхронизировать только определенные файлы из определенных подкаталогов с удаленного сервера

Структура каталогов у меня следующая.

./model1 ./model1/correct_data/file1.txt ./model1/bad_data/file1.txt ./model2 ./model1/correct_data/file1.txt ./model1/bad_data/file1.txt 

Мне нужно только синхронизировать file1.txt который присутствует в подкаталоге correct_data .

rsync может использоваться для рекурсивной синхронизации только file1.txt из всех подкаталогов, как

rsync -zarvL --prune-empty-dirs --include "*/" --include="file1.txt" --exclude="*"' <from> <to>

Однако я не уверен, как добавить дополнительный сдерживать синхронизацию только в подкаталог correct_data

  • Что вы фильтруете / исключаете список при выполнении резервного копирования с помощью rsync?
  • rsync с именем странных файлов
  • Будет ли rsync восстанавливать исходные метаданные файлов?
  • Безопасность сервера rnync / daemon
  • сохранять те же метаданные inodes с помощью rsync или игнорировать метаданные с помощью du
  • rsync непостоянно не работает с жесткой связью
  • Самый быстрый способ дублирования файлов с одного USB-накопителя на несколько других?
  • Перечислить временные файлы по числовому значению, имеющему число больше заданного постоянно изменяющегося имени файла
  • One Solution collect form web for “рекурсивно синхронизировать только определенные файлы из определенных подкаталогов с удаленного сервера”

    Я бы использовал это

     ( cd {from} && rsync -zavLR */correct_data/file1.txt {to}/ ) 

    Новый ингредиент – -R который применяет исходный путь каждого файла к корню назначения {to} . Я удалил -r потому что это подразумевается -a . Значение -z применимо только в том случае, если цель на самом деле является удаленной. Вы действительно намереваетесь -L ?

    Подселочка хранит счетчик cd {from} ограниченным командой rsync .

    Linux и Unix - лучшая ОС в мире.