我正在尝试用python脚本替换处理项目的旧批处理脚本。我知道子进程模块,但是我不知道如何调用vcvarsall.bat,该文件设置编译我们的项目并继续输入命令所必需的环境变量。我需要的是连续运行这3个命令的python代码:
cmd.exe /k ""C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"" amd64
qmake config+=somevars
nmake Somevars
像这样简单地调用vcvarsall.bat:
subprocess.check_output(["C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat", "amd64"])
不会以后续命令可访问的方式设置环境变量。
我在基于Windows10的Docker容器和Python3.6中
答案 0 :(得分:0)
按照@lit的建议使用3行.bat文件解决了该问题:
"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
qmake config+=somevars
nmake Somevars
并使用Popen().wait()
进行调用,请参见here