作業ディレクトリとして2番目のディレクトリを使用して別のバッチファイルを呼び出すバッチファイルを呼び出す


1

C:\に次の行を含むバッチファイル(start.bat)があるとします。

start cmd /k call dir1\dir2\1.bat
start cmd /k call dir3\dir4\2.bat
start cmd /k call dir5\dir6\3.bat

1,2,3.batchの中に

call mvn clean install

したがって、それらが配置されているディレクトリで実行するには、1,2,3.batchが必要です。私が使用した他のソリューションpushdまたは~dp0start.batで動作させることはできません

構造は次のとおりです。

C:\
    dir1
        dir2
    dir3
        dir4
    dir5
        dir6

回答:


1

開始コマンドで、開始されたプロセスの現在のアクティブフォルダーを指定します。

start "[started in dir2]" /d "dir1\dir2" cmd /k 1.bat

1
感謝します。小さな半OT質問。別のバッチファイルがstart.batを起動し、完了するのを待つことはできますか?startstart.batのような(start / wait call start.bat)?一連の異なるバッチファイルを順番に実行し、前のバッチファイルが終了するまで待機する必要があります
-sceiler

1
@ sceiler、1つのバッチファイルが別のバッチファイルを直接呼び出す場合、実行フローは呼び出される側に転送され、呼び出し側には戻りません。call child.bat呼び出されたファイルが終了すると、呼び出し元で実行が続行されるように使用します。
MC ND
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.