0

フォルダー(フォルダーAと仮定)にあるバッチファイル(batch1と仮定)を作成し、別のディレクトリ(フォルダーBと仮定)にある別のバッチ(batch2と仮定)を開始するようにプログラムされています。バッチ 2 は、ファイルを抽出するようにプログラムされています (フォルダ A と B の両方にある xyz.tar を想定)。しかし、batch1 を開始すると、batch2 が開始されますが、batch2 は B ではなくフォルダー A にファイルを抽出します。以下の例は理解に役立ちます。
これが私のバッチファイルです。

::バッチ1

ECHO This is batch1  
"D:\folder B\batch2.bat"

::バッチ2

ECHO This is batch2  
7z.exe x xyz.tar >nul

フォルダ A には、batch1.bat と xyz.tar が含まれています。

フォルダ B には、batch2.bat と xyz.tar が含まれています。

batch2 は開始しますが、フォルダー A にあるファイルの抽出を開始しますが、フォルダー B の xyz.tar を抽出する必要があります。

4

2 に答える 2

2

@echo off/setlocal試した後、batch2.batの開始時

cd /d "%~dp0"
于 2013-05-30T11:27:16.350 に答える
1

正しい位置に展開するには、作業フォルダを変更する必要があると思います。

次のようなものを試してください:

cd "d:\folder B"
 batch2.bat
于 2013-05-30T11:27:51.033 に答える