Как назначить параметр %% переменной? - PullRequest
1 голос
/ 02 марта 2012

Как назначить параметр %% переменной?

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

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

Вывод этого кода:

A=user1
USER=

Как назначить параметр %% A переменной USER?

1 Ответ

6 голосов
/ 03 марта 2012

Параметр %% 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.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...