3

Я хотел бы зеркалировать только определенные файлы (например, * .jpg), но rsync создает пустые каталоги на хосте назначения, в которых нет файлов * .jpg.

Мой синтаксис:

rsync -arv  
      --include '*/' 
      --include '*.flv' 
      --exclude '*' 
      host_source/ host_dest/

Я пытаюсь создать файл со всеми путями и соответствием шаблона файла * .jpg:

    find source/ -iname *.jpg > myfiles.txt  
/* and I use "sed" to filter the parent path to be OK */

Итак, теперь я бегу:

rsyn -ar --files-from=myfiles.txt host_source/ host_dest/

Это прекрасно работает; пустые каталоги не создаются на "host_dest", но теперь, если на "host_dest" есть файлы, которые следует удалить на "host_source", rsync не удаляет их.

Итак, как мне сказать rsync "искать" ТОЛЬКО шаблон файла, а не создавать пустые каталоги на host_dest?

Большое спасибо за ответы, прежде чем я сойду с ума :)

2 ответа2

2

man rsync:

-m, --prune-empty-dirs      prune empty directory chains from file-list
0

Попробуйте удалить рекурсивную опцию из командной строки

rsync -a --files-from = myfiles.txt host_source/ host_dest/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .