是否有可能使用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 。