我已经写了使用子过程调用ROBOCOPY同步从远程主机日志文件一个Python脚本。

像这样:

program = 'Robocopy'
options = ['/S']
args.append(program)
args.append(options)
args.append('\\\\%s\%s' % (hostname, source_path))
args.append(local_path)
proc = subprocess.Popen(args=args, shell=True, stdout=cmd_log, stderr=error_log) 

其中SOURCE_PATH是远程主机和LOCAL_PATH上的路径是本地主机(二者UNC路径)上的路径。 该代码通常运行在一个守护进程,并得到开锣每隔几个小时。它也可以运行这些代码直接在命令提示符。当它在守护进程运行看来,有时从我的Robocopy得到一个错误:

错误代码6: '句柄无效'

但是,当我在命令提示符下运行这个我没有得到任何错误。从我在网上搜索发现文件已经被上传输的文件打开的句柄,这可能是相关的。有没有人有这个错误,方法的详细信息,以避免它?

有帮助吗?

解决方案

谷歌搜索 “ROBOCOPY句柄无效” 建议您可以通过使用/ b选项为“备份模式”中找到成功。

即使不工作,我建议将代码添加到输出文件名,因为他们被复制(或记录它),一旦你已经确定发生故障的具体文件,你可能也意识到了什么问题是

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top