我写了一个小的Python脚本wrapcl.py
脚本,它包装了我们的编译器二进制文件(cl.exe
,Microsoft Visual Studio C ++编译器)。然后我创建了一个新的批处理文件cl.bat
,这使得Python脚本可以访问,这样我就可以像以前一样运行cl
,它将默默地调用我的包装器脚本而不是真正的程序。对于它的价值,这是我的cl.bat
批处理文件:
@python %~dp0\wrapcl.py %*
这很有效 - 除了一个案例:
我们有现有的脚本,例如
cl >NUL 2>&1 && GOTO CL
确定Microsoft Visual Studio C ++编译器是否可用。如果cl
实际调用我的cl.bat
批处理文件,则会中断,因为对cl.bat
的调用永远不会返回。我们必须使用call cl >NUL ...
。
有什么方法可以让我的wrapcl.py
Python脚本看起来像cl.exe
,这样我就可以避免触及我们希望cl && foo
工作的现有脚本了吗?