Rsync只更改了文件


14

是否可以rsync在目录中传输已更改或已创建的所有文件?我不需要像CRC diff检查那样复杂的东西; 具有不同时间戳和/或文件大小的文件计为更改。

我从手册页得到的印象应该是可能的,但我需要一些关于要传递的参数集的指导rsync

Answers:


18

要同步两个目录:

$ rsync /source/path/* /dest/path/

或者如果你想做一棵完整的树:

$ rsync -a /source/path/ /dest/path/

“-a”指定“归档”模式,它尽可能地复制树。

我喜欢在那里添加标志vP所以我可以看到它的工作原理:

$rsync -avP /source/path/ /dest/path/

“-v”打开详细模式,因此您可以看到它正在做什么(它在复制时列出文件),并且“-P”启用进度,因此您可以看到复制每个文件需要多长时间(复制百分比,剩余时间等),并允许您查看您的副本有多远。


2
...并且可能添加z标志以使用压缩进行传输
Linker3000 2011年

2
...如果你转移到一个偏远的地方
Majenko 2011年

13

这是rsync默认情况下的工作原理(至少在Linux上)。从手册页

Rsync使用“快速检查”算法(默认情况下)查找需要传输的文件,该算法查找已更改大小或上次修改时间的文件。当快速检查表明不需要更新文件的数据时,将直接在目标文件上对其他保留属性(由选项请求)进行任何更改。


啊,我误读了文档,让自己感到困惑。谢谢:)
instanceofTom
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.