我有两个文件夹:
目录A:
- test.txt
- subfolder1/test2.txt
目录B:
- test.txt
- test4.txt
- subfolder1/test2.txt
- subfolder1/test3.txt
现在,我想同步directory A
中B
中的文件,但仅限A
中存在的文件。因此,当我更改test4.txt
时,不会发生任何事情,但是当我更改subfolder1/test2.txt
时,它应该同步。
我的方法如下。获取directory A
中具有目录a的相对路径的文件列表。将其作为rsync相对于directory B
的参数并同步到A
。
这样对吗?所以我需要一个bash脚本?我在bash脚本方面不是很有经验。
我如何获得相对路径?我cd
进入目录并执行find *
?
非常感谢
答案 0 :(得分:2)
Rsync可以选择仅更新文件而不创建新文件。来自man:
--existing skip creating new files on receiver
针对您的案例的示例rsync命令:
$ rsync -r --existing B/ A/