Python 2.7 - 在subprocess.py上崩溃 - Windows错误:[错误2]系统找不到文件
File "C:\Python27\lib\subprocess.py", line 709, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 957, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
我已经搜索了其余的问题并尝试了所有路径设置和环境变量,所有这一切似乎都很好。
提前感谢您的帮助。
答案 0 :(得分:0)
“WindowsError:[错误2]系统找不到指定的文件”
当我想要调用未安装的程序时,我遇到了同样的错误(我使用的是ubuntu而不是windows)。
http://docs.python.org/2/library/subprocess.html#exceptions
尝试在shell中手动执行命令,以获得真正的错误
或使用这个好方法:
from subprocess import CalledProcessError, check_output
try:
output = check_output(["ls", "non existent"])
except CalledProcessError as e:
print(e.returncode)
N.B:在我的系统(ubuntu)中,我得到:
ls:无法访问不存在:没有这样的文件或目录 2
在Windows中没有“ls”命令,你会得到异常,这意味着。
来自: Check a command's return code when subprocess raises a CalledProcessError exception
答案 1 :(得分:0)
通过子过程运行命令时使用列表。 列表应按如下方式创建: 假设你想要ot run命令:
ls -l
那么命令应该是
cmd = ["ls" "-l" ]
subprocess.Popen(cmd)