这一定很简单。不幸的是,我也是。
“filelist.txt”是输出:dir / b
此代码有效:对于'filelist.txt'中的每一行,该行都按预期进行回显。
for /F "tokens=*" %%A in (filelist.txt) do echo %%A
此代码不起作用:对于'filelist.txt'中的每一行,只回显var名称“%A”。
for /F "tokens=*" %%A in (filelist.txt) do call :sub1
goto :eof
:sub1
echo %%A
goto :eof
我做错了什么?提前谢谢。
答案 0 :(得分:4)
尝试:
@echo off
for /F "tokens=*" %%A in (filelist.txt) do call :sub1 %%A
goto :eof
:sub1
echo %1
goto :eof
您需要将参数(%%A
)传递给子例程(arg guide),然后在子例程中,您可以按位置(%1
)访问它。