Моя основная проблема: папка /tmp/fol 1 не существует на удаленной машине.
Какие аргументы я могу использовать, чтобы заставить rsync создать это дерево?
Ответ 1
Сегодня я столкнулся с той же проблемой и нашел решение здесь.
Вы можете:
rsync -avR foo/bar/baz.c remote:/tmp/
или
rsync -avR somedir/./foo/bar/baz.c remote:/tmp/
чтобы создать /tmp/foo/bar/baz.c на удаленном компьютере.
см. раздел --relative/-Rman rsync для более подробной информации.
Ответ 2
Один трюк для этого - использовать параметр --rsync-path со следующим значением:
--rsync-path="mkdir -p /tmp/fol1 && rsync"
С помощью --rsync-path вы можете указать, какая программа будет использоваться для запуска rsync на удаленном компьютере и запускается с помощью оболочки.
Ответ 3
Вы можете сделать это через bash и открыть туннель ssh, чтобы структура файла вам понадобилась, а затем rsync данные. Изменятся ли эти временные папки каждый раз, когда эта синхронизация будет выполнена? например, это для каждого дня недели?