2013-08-19 87 views
1

運行nmake當我由一個在Windows命令提示符下運行以下命令之一,他們很好地工作。如何在一個bat文件

%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構建項目中運行它。

+0

你是如何檢測的其他3個沒有得到執行? – doctorlove

+0

我不知道,也沒有更多的產出。 –

回答

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和next命令的新實例在這個新的實例是有類型。您將需要兩個EXIT命令,退出命令提示符。

鍵入命令,你可以只輸入"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\VsDevCmd.bat"代替%COMSPEC% ...,但在批量它會打破批量執行,所以你必須在前面加上CALL

+0

我讀過這篇文章 http://bojan-komazec.blogspot.com/2011/10/nmake-and-its-environment.html 瞭解了很多,並且自己弄明白了。但我認爲你的答案對許多新手來說要容易得多。謝謝。 –

0

嘗試使用%comspec% /c ...,不%comspec% /k。看看cmd /?尋求更多幫助。而且,你不需要雙反斜槓,一個就足夠了。

+0

我試過/ c而不是/ k。但是,仍然有「NMAKE」不被識別爲一個內部或外部命令, –

+0

入門NMAKE無法識別表明,它會嘗試下一個步驟。在引用cd「C:\\ ...」中插入cd等等等等是否有所作爲? – doctorlove