4

我有两个大型源代码树。其中之一有一些过时的图像文件。我想用另一个源树中的最新图像文件自动更新一个源树中的所有旧图像文件(png、jpg、gif)。

我使用的是 Windows 7,但我安装了 Cygwin。到目前为止,我已经尝试使用 rsync 但没有成功。

我希望我可以做类似的事情:

rsync -r *.png newSourceTree oldSourceTree

如果有其他方法可以实现相同的目标,例如 Perl 或 Bash 脚本,我也愿意使用它。

任何帮助将非常感激。

谢谢,詹姆斯。

4

3 回答 3

2

你要:

rsync -av --include '*.png' --include '*/' --exclude '*' newSourceTree/ oldSourceTree/

快速解释:您想要包含 png 文件,包含所有目录(以便它可以递归),然后排除其他所有内容。包含/排除从左到右处理,默认包含所有内容。

于 2010-04-12T15:55:14.937 回答
1

关于什么:

robocopy c:\source\ c:\destination\ *.png *.gif /s
于 2010-04-12T13:59:53.263 回答
1

Unison正是针对此类问题而设计的。您可以使用同步所有文件

unison oldTree newTree -force newer

如果您希望它仅触摸图像文件,请阅读文档。

于 2010-04-13T01:51:12.320 回答