Командная строка Windows (cmd.exe) предоставляет команду FOR. Она может быть использована для выполнения операции для любогофайлв каталоге. Пример:
\> dir
28.05.2012 18:25 69 buildall.bat
28.05.2012 07:48 <DIR> include
28.05.2012 18:23 <DIR> sub-607
\> for %d in (*.bat) echo %d
Как я могу сделать то же самое (не рекурсивно) со всеми подкаталогами в заданном каталоге? Идея такова:
for %d in (sub-*) do (
cd %d
dosomething
cd ..
)
Вышеприведенный оператор for не находит sub-607, потому что это нефайл.
решение1
Команда for
может использовать /D
переключатель для перебора подкаталогов, а не файлов.
for /D %d in (sub-*) do ...
Смотрите здесь для более подробной информации:http://ss64.com/nt/for_d.html