私は2つのバッチファイルを持っています。
最初のものには、親フォルダーのパスである入力引数が必要です。親フォルダー内のすべてのサブフォルダーの名前を読み取り、サブフォルダーごとに 2 番目のバッチ ファイルを実行します。
バッチファイル 1
@echo off
for /d %%Y in (%1/*) do (
set SubfolderNameAndPath=%%Y
call batch2.bat %SubfolderNameAndPath%
)
2 番目のバッチ ファイルは、SubfolderNameAndPath を入力引数として使用し、各サブフォルダーに存在するすべてのファイルに対して Evaluate.exe を実行します。Evaluate.exe の結果をテキスト ファイル "results" に保存します。拡張子には、毎回アクセスされたサブフォルダーの名前が付けられます。( results_%~n1.txt
)。
バッチファイル 2
@echo off
for %%X in (%1/*) do (
echo Evaluate.exe %%X AnotherArgumentHere -o results_%~n1.txt
)
batch2.bat を呼び出しているように見えても、batch1( batch1.bat ParentFolderPath
) を実行すると、batch2.bat が実行されません。batch2.bat の入力引数を定義する方法に問題があると思いますが、それが何であるかわかりません。
には%SubfolderNameAndPath%
スペースが含まれていません。フォルダへのパスもありません。その点についてご協力いただければ幸いです。