Skip to main content
 首页 » 编程设计

python之Robocopy 错误代码 6 '' 句柄无效'

2025年05月04日12xxx_UU

我编写了一个 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)  

其中 source_path 是远程主机上的路径,local_path 是本地主机上的路径(均为 UNC 路径)。 该代码通常在守护进程中运行,每隔几个小时就会启动一次。也可以直接在命令提示符下运行此代码。似乎有时当它在守护进程中运行时,我会从 Robocopy 收到错误消息:

错误代码 6:“句柄无效”

但是当我在命令提示符下运行它时,我没有收到任何错误。根据我在网络搜索中发现的内容,这可能与正在传输的文件上已经打开的文件句柄有关。谁有关于此错误的更多信息以及避免错误的方法?

请您参考如下方法:

Google 搜索 "robocopy handle is invalid"建议您使用“备份模式”的/b 选项可能会成功。

即使这不起作用,我建议添加代码以在文件名被复制时输出它们(或记录它),并且一旦您确定了特定的失败文件,您也可能会意识到问题是。