旧服务器版本上的rsync模拟--ignore-missing-args

时间:2017-04-13 11:47:57

标签: rsync

我有一个脚本使用rsync参数--files-from和精确的文件列表(没有过滤规则,没有通配符等)和--ignore-missing-args(忽略将来由服务器创建的文件) )定期传输文件。

脚本应该在任何重大错误(例如连接丢失)时终止;在服务器上有一个较旧的rsync(3.0.4;本地我有版本3.1.0)版本不支持--ignore-missing-args

rsync: on remote machine: --ignore-missing-args: unknown option

如果没有--ignore-missing-args选项,任何丢失的文件(以及将来要创建的文件)都将导致rsync错误,返回代码不等于0

有没有解决方法呢?

提前致谢!

1 个答案:

答案 0 :(得分:0)

找到解决方案:

使用--include-from并在文件列表中列出的每个文件之前添加+,另外,添加- *以排除任何其他文件,例如

$ cat files.txt
+ foo.bar
+ bar.foo
- *

最终rsync命令:

rsync --include-from=files.txt [path] [host]:[path]