2

Windows コマンド プロンプトで次のコマンドを 1 つずつ実行すると、正常に動作します。

%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

それらを1つのbatファイルに書き込んでWindowsコマンドプロンプトでbatファイルを実行しようとすると、最初のコマンドしか出力されず、残りの3つのコマンドは実行されません。

これを行う方法?1 つの 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コマンド プロンプトを終了するには、 2 つのコマンドが必要です。

"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 /?。さらに、2 つのバックスラッシュは必要ありません。1 つあれば十分です。

于 2013-08-19T11:54:10.903 に答える