rsync:仅向一个方向传输文件

是否有可能使用rsync只能在一个方向上复制文件?

例如,假设我们有:

left/a.txt

right/a.txt

这些文件最初是相同的。

如果你修改了right/a.txt ,那么:

rsync -avv left/ right/

right/a.txt复制到left/a.txt

是否有可能限制rsync只left/ right/复制right/ (即防止它right/ left/复制left/ )?

你误解了rsync。 这个命令:

 rsync -avv left/ right/ 

不会同步任何东西从右到左。 正如@atbg所说,它只会左右同步。 Rsync不是双向同步器。 它将dest与源同步。

手册页供参考: http : //linux.die.net/man/1/rsync

它应该是rsync [OPTION...] SRC... [DEST]所以它在这个方向工作(除非你切换dest和src)。

left/a.txt应该被复制到right/a.txt

 $ echo 'left' > left/a.txt $ echo 'right' > right/a.txt $ cat left/a.txt && cat right/a.txt left right $ rsync -avv left/ right/ sending incremental file list delta-transmission disabled for local transfer or --whole-file a.txt total: matches=0 hash_hits=0 false_alarms=0 data=5 sent 95 bytes received 34 bytes 258.00 bytes/sec total size is 5 speedup is 0.04 $ cat left/a.txt && cat right/a.txt left left 

如果有特定的文件,你不希望包括在rsync中看看--exclude=PATTERN--exclude-from=FILE