パラメーターをバッチ ファイルに渡す際に問題が発生しています。パラメーター ファイルには n 行があり、bacth を実行して最初の行を読み取り、それを .bat のパラメーターとして実行し、次の行を読み取ります。同様に、テキスト ファイルに n 行が見つかった場合は、n 回実行する必要があります (たとえば、テキスト ファイルに 100 行ある場合、.bat のループ実行は 100 回継続する必要があります)。私は次のようなスクリプトを持っています
@echo off
setlocal enabledelayedexpansion
set file1=D:\Batch\parm.txt
set /a cnt=0
for /f "tokens=*" %%a in (%file1%) do (
set %file1% =%%a
echo !%file1%!
)
FOR /F "tokens=1 delims=|" %%G IN (%file1%) DO set a1=%%G
FOR /F "tokens=2 delims=|" %%K IN (%file1%) DO set a2=%%K
FOR /F "tokens=3 delims=|" %%I IN (%file1%) DO set a3=%%I
echo parameter file found
echo reading parameters to pass through
echo (%a1%,%a2%,%a3%)>>D:\Batch\output.txt
goto break
:break
set /a cnt+=1
exit /b
私のパラメータファイルは次のように入力されています
"India"|"Australia"|"Africa"
"I1"|"A1"|"A11"
"I2"|"A2"|"A12"
私の出力は次のようになります。
パラメータファイルが見つかりました
通過するパラメーターの読み取り
「インド」「オーストラリア」「アフリカ」
パラメータファイルが見つかりました
通過するパラメーターの読み取り
「I1」、「A1」、「A11」
パラメータファイルが見つかりました
通過するパラメーターの読み取り
「I2」、「A2」、「A12」
現在、出力として最後のパラメーターのみを取得しています。スクリプトの修正を手伝ってください。