强制rsync覆盖目标位置的文件,即使它们较新


43

我运行了一个rsync备份脚本,该脚本还可以将文件恢复到我询问时的来源。但是,如果我尝试还原时目标位置的文件比备份中的文件新,它将不会替换它们。我真的很想用备份中的文件替换较新的文件,但是我没有找到使rsync做到这一点的方法。

tldr:有没有办法强制rsync在目标位置覆盖文件?

编辑:我一直在运行rsync -avhp当我想还原备份时,我使用相同的命令,将“ to”和“ from”互换。因此,它尝试将文件从备份驱动器复制到我计算机上的位置。


14
rsync除非您告诉它不要这样做,否则它将始终覆盖目标位置上的文件(选项-u, --update)。检查您的命令行参数。
scai 2013年

您可以共享实际的rsync命令吗?Rsync将用较新的文件覆盖较旧的文件,因此您很可能仅按时间戳比较文件,并且两台计算机之间的日期略有偏差。
slm

我尝试使用touch来使要替换的文件比备份要“旧”,但是它仍然不能替换主文件夹中的现有文件。
jedipixel

也许'-I --modify-window = 999999999'对您有用吗?
jelle foks 2013年

Answers:


47

该手册说:

-I, --ignore-times   don't skip files that match size and time

详细信息:

-I, --ignore-times

通常,rsync将跳过任何已经具有相同大小且具有相同修改时间戳记的文件。此选项关闭此“快速检查”行为,导致所有文件被更新。

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.