вторник, 28 апреля 2015 г.

[успешно] "SET /A" в составе цикла "FOR"

Задача:
В батнике, в составе цикла FOR команда "SET /A ..." с последующим выводом результата (внутри того же цикла "FOR") почему-то не обрабатывается.

Решение:
Для вывода результата нужно обращаться к переменной через восклицательный знак "!" (см. строку с "echo") и обязательно в режиме "ENABLEDELAYEDEXPANSION":
BAT-вариант:
SETLOCAL ENABLEDELAYEDEXPANSION
SET myCount=0
FOR /F "tokens=*" %%i in (my_list_file.txt) DO (
SET /A myCount+=1
ECHO !myCount!
)

Комментариев нет:

Архив