0

私はこのコウモリに問題があります:

@echo off

set CD1OLD=%CD%
cd /d %~dp0


%CD%\xxx.Http.Client.exe http://localhost:8081/aaa/comparer/aa/base/aa/compare >     debug_aaa_base.xml
echo.
%CD%\xxx.Http.Client.exe http://localhost:8081/aaa/comparer/aa/complessi/aa/compare > debug_aaa_complessi.xml
echo.
echo ****** LANCIO xxxx ******
%CD%\Lancio_xxxx.bat
echo.

このコードの後で、これを実行する必要があります。

echo ****** SPOSTA FILES ****** 
%CD%\Elaborazione_aaa_Spostamento_files.exe
cd /d %CD1OLD%

しかし、それは機能していません..コード自体の実行中に最初のコードが実行パスを変更し、2番目のコードブロックの実行に問題が発生したようです..

特に、この行を削除すると

%CD%\Lancio_xxxx.bat

すべて正常に動作します。しかし、私もその行を実行する必要があります!

助言がありますか?前もって感謝します

よろしくお願いします

4

2 に答える 2

1

別の .bat から単に .bat を呼び出した場合、コマンド プロセッサは呼び出し元に戻らないことに注意してください。呼び出しバッチは実行を再開しません。「呼び出し」はgoto、参照されたバッチ ファイルに移動する単純なもののようなものです。

交換すれば

%CD%\Lancio_xxxx.bat

call %CD%\Lancio_xxxx.bat

そのバッチファイルの実行後、そのcall行の後のコマンドも実行されます。これは、探しているもののようです。

于 2013-02-19T14:48:37.153 に答える
0

Lancio_xxx.bat を実行する行の周りでコマンド PUSHD と POPD を試してください。

これらのコマンドは、現在のディレクトリをそれぞれ保存および復元します

詳細については、次のリンクを参照してください。

http://ss64.com/nt/pushd.html

http://ss64.com/nt/popd.html

于 2013-02-19T14:43:14.163 に答える