我已经写了一个python脚本,它使用子进程调用robocopy从远程主机同步日志文件。
如下所示:
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) 其中UNC是远程主机上的路径,local_path是本地主机上的路径(两个UNC路径)。代码通常在守护进程中运行,每隔几个小时就会被踢出一次。也可以直接在命令提示符上运行此代码。有时,当它在守护进程中运行时,我会收到来自Robocopy的错误:
错误代码6:‘句柄无效’
但是当我在命令提示符下运行这个命令时,我没有得到任何错误。从我在web搜索中发现的情况来看,这可能与正在传输的文件上已经打开的文件句柄有关。有没有人有更多关于这个错误的信息和避免它的方法?
发布于 2009-12-19 05:21:15
谷歌搜索"robocopy handle is invalid"提示你可以通过使用“备份模式”的/b选项找到成功。
即使这不起作用,我也建议添加代码来输出正在被复制(或记录)的文件名,一旦您确定了特定的失败文件,您很可能也会意识到问题所在。
https://stackoverflow.com/questions/1928855
复制相似问题