Пакетный файл: список всех папок в текущем каталоге с номером / счетчиком - PullRequest
2 голосов
/ 27 февраля 2012

Извините за плохое описание, я ожидаю следующий вывод:

  1. FolderA
  2. FolderB
  3. FolderC

Следующий код не работает для меня

@ECHO OFF
set /a count=0

for /d %%d in (*) do (
set  /a count+=1
@echo %count%. %%d 
)
PAUSE

Счетчик остается на 0.

1 Ответ

2 голосов
/ 27 февраля 2012

Что вам нужно, это задержка расширения переменной. Для этого просто внесите следующие 2 изменения:

  1. Добавьте setlocal EnableDelayedExpansion в начало вашего командного файла.
  2. Заменить %count% на !count!.

Результат:

@echo off
setlocal EnableDelayedExpansion
set /a count=0

for /d %%d in (*) do (
    set /a count+=1
    @echo !count!. %%d 
)
pause
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...