如何将%%参数分配给变量?
FOR /F "tokens=1 delims= " %%A IN (connections.txt) DO (
set USER=%%A
echo A=%%A
echo USER=%USER%
)
此代码的输出:
A=user1
USER=
如何将参数%% A分配给变量USER?
答案 0 :(得分:6)
参数%% A已正确分配给USER变量,但未正确显示USER值。
要使用在内部修改的变量的当前值,必须使用延迟变量扩展,即通过感叹号以这种方式更改百分比:
FOR /F "tokens=1 delims= " %%A IN (connections.txt) DO (
set USER=%%A
echo A=%%A
echo USER=!USER!
)
并在开头包含此行:
setlocal EnableDelayedExpansion
否则,%USER%的值是变量在进入FOR循环之前的值。