子流程.Popen无法识别cwd参数

2024-04-26 05:58:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试从位于不同目录中的python脚本运行命令行工具。我用

subprocess.Popen(cmd, cwd="c:\\path\\to\\tool")

其中cmd的格式

"Toolname.exe /switch1 /switch2 /switch3"

在工具位置打开一个命令行,并在python解释器中执行上面的命令,可以很好地运行该工具。但如果我尝试在不同的目录中执行相同的操作,我会

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\subprocess.py", line 390, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 640, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

在我看来cwd什么也没做。如果我在工具位置打开一个命令提示符,并用cwd=“不正确的目录”运行命令,它仍然有效。那么,我怎样才能让我的cwd论点起作用呢?你知道吗


Tags: 工具命令行inpy命令目录脚本cmd