batch-file - 如何在批处理中使用 FOR 循环参数设置变量
问题描述
我需要遍历一个文件,将值影响到一个变量,然后循环到第二个文件并使用这些先前的变量:
for /F "delims=, tokens=1-3" %%a in (Test_1.txt) do (
set Var1=%%b
set Var2=%%c
for /F "delims=, tokens=1-4" %%a in (Test_2.txt) do (
if "%%d"=="" (
echo %%a !var1! !Var2!>>Test_3.txt
)
)
)
如何影响变量的第一个参数?
解决方案
根据您的评论,您甚至根本不需要延迟扩展:
每个循环都必须有它自己唯一的令牌变量。
for /F "delims=, tokens=1-3" %%a in (Test_1.txt) do (
for /F "delims=, tokens=1-4" %%d in (Test_2.txt) do (
if "%%e"=="" (
echo %%d %%a %%b >> Test_3.txt
)
)
)