2

当我在 Windows 命令提示符中一一运行以下命令时,它们工作正常。

%comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\VsDevCmd.bat""
cd C:\\Program Files (x86)\\Jenkins\\jobs\\gdal_win32_develop\\workspace\\codes\\deps\\gdal\\gdal_1.8_rtc
nmake -f makefile.vc clean
nmake -f makefile.vc

当我将它们写入一个bat文件并尝试在windows命令提示符下执行bat文件时,它只输出第一个命令,剩下的三个命令没有执行。

这该怎么做?我需要这个,因为我想在一个 Jenkins 构建项目中运行它。

4

2 回答 2

7

将行替换%comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\VsDevCmd.bat""

CALL "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\VsDevCmd.bat"

您不知道,但是在命令行中键入命令时,首先,您获得了一个新的 cmd.exe 实例,并且在这个新实例中键入了下一个命令。您将需要两个EXIT命令来退出命令提示符。

键入命令,您可以只键入"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\VsDevCmd.bat"而不是%COMSPEC% ...,但是在批处理中它会破坏批处理执行,因此您必须在前面加上CALL.

于 2013-08-20T15:47:26.780 回答
0

试试用%comspec% /c ...,不行%comspec% /k。查看cmd /?更多帮助。此外,您不需要双反斜杠,一个就足够了。

于 2013-08-19T11:54:10.903 回答