2012-03-02 308 views
1

如何将%%参数赋值给变量?如何将%%参数赋值给变量?

FOR /F "tokens=1 delims= " %%A IN (connections.txt) DO (
    set USER=%%A 

    echo A=%%A 
    echo USER=%USER% 
) 

输出这个代码:

A=user1 
USER= 

如何参数%%一个分配给变量USER?

+0

这可能有些用处http://www.robvanderwoude.com/variableexpansion.php – 2012-03-02 16:49:10

+0

非常感谢。 – 2012-03-02 17:35:00

回答

5

参数%% A已正确分配给USER变量,但未正确显示USER值。

要使用被修改 FOR循环变量的当前值,则必须使用变量延迟扩展,即通过感叹号变化的百分比是这样的:

FOR /F "tokens=1 delims= " %%A IN (connections.txt) DO (
    set USER=%%A 

    echo A=%%A 
    echo USER=!USER! 
) 

,包括这条线在开头:

setlocal EnableDelayedExpansion 

否则,%USER%的值是一个变量有过进入FOR循环。

+0

谢谢!很有帮助 – 2012-10-25 08:03:28