我写了一个简单的 python 脚本,它启动 (os.start(path)) 一个批处理文件并等待它通过 os.spawnv(os.P_WAIT,bat,() )。
问题是它抛出了一个异常:
“exceptions.EOFError:[Errno 10054] 现有连接被远程主机强行关闭”
脚本在 windows 7 64bit 上运行,批处理文件包含简单的命令,如 cd..
代码:
import os
bat = r'C:\new folder\start.bat'
os.spawnv(os.P_WAIT,bat,())
print "ok"
有什么建议吗?
请您参考如下方法:
要在 Windows 上运行批处理文件,您实际上必须 os.spawn() 或 subprocess.call() 带有参数的东西来模拟类似于命令行的命令以下内容:
cmd.exe /c "C:\new folder\start.bat"
cmd.exe 的/c 参数告诉它执行提供的命令并退出。您还需要在包含嵌入空格字符的所有路径两边加上双引号,如上所示。
