当我做类似的事情时:
rsync Videos/YouTube/LetsPlays foo@bar:/home/foo/
最终的目录结构如下:
/home/foo/LetsPlays
我已经阅读了手册页,但找不到维护目录结构的选项,目的是
/home/foo/Videos/YouTube/LetsPlays
结果。有什么想法吗?
一如既往地感谢,Markus
答案1
使用-R
或--relative
选项来保留完整路径。
如果您不想要远程文件的完整路径,而只想要其中的一部分,rsync 自 2.6.7 版本起提供此功能(这是发送端的版本,在您的情况下是本地端)。
/./
只需在要中断路径的路径中插入一个点
前任:
rsync --relative Videos/./YouTube/LetsPlays foo@bar:/home/foo/
将导致以下远程路径:
/home/foo/YouTube/LetsPlays
答案2
我尝试使用--relative
对我不起作用的标志。因此,我习惯-R
保留路径。在要中断它的路径中插入一个点 /./。
命令:
rsync -avR /src path/ /dest path/
例子:
rsync -avR Videos/./YouTube/LetsPlays foo@bar:/home/foo/
结果:
/home/foo/YouTube/LetsPlays