【发布时间】:2015-02-22 12:37:46
【问题描述】:
我正在用 python 开发一个可以从多台机器收集日志的脚本。我正在使用rsync。但是有一个问题。我有多个服务的日志,如下所示:
service1.log
service2.log
service3.log
... and so on
此文件和文件夹的路径在代码中指定。但有时我会遇到一些日志文件还不存在的情况。并且 rsync 没有成功完成。
如何跳过源计算机上不存在的文件?
附言我正在使用 saltstack 来统治机器,所以我调用:
__salt__['cmd.retcode']('rsync -a file1 file2...')
【问题讨论】:
-
最好使用 try/except
-
@PadraicCunningham 也不例外。我称它为 cli 实用程序,它只是不返回 ret_code 0。
-
你是如何使用它的?我以为你可能在使用 subprocess 或 pexpect
-
@PadraicCunningham 抱歉,我忘了把它包含在我的帖子中。我正在使用 SaltStack。我做 __salt__['cmd.retcode']('rsync -a file1 file2..')
-
你能复制目录而不是单个文件吗?