CMD/BAT - [решено] Определение количества подкаталогов

Ответить
Аватара пользователя
kelevara

CMD/BAT - [решено] Определение количества подкаталогов

Сообщение kelevara »

Добрый день!

Необходимо посчитать количество подкаталогов в заданной папке и ее подкаталогах. При этом нужно использовать For /D (такое вот странное требование). Каким образом? Или части Do записать условие IF, которое будет проверять, является ли текущий каталог самым "нижним"?
Аватара пользователя
kiripanda

Re: CMD/BAT - [решено] Определение количества подкаталогов

Сообщение kiripanda »

kiripanda, пару вопросов возникло:



1. директория, в которой осуществляется поиск, задается перед for /d с помощью переменной Temp, правильно?

2. но ведь данный скрипт не будет подсчитывать количество вложенных подкаталогов?
Аватара пользователя
gora

Re: CMD/BAT - [решено] Определение количества подкаталогов

Сообщение gora »

Код:

Код: Выделить всё

@Echo Off
Set MyDir=e:\Temp 1\08
Call :_subdir "%MyDir%"
Echo.
Echo All subdirs = %SubDirs%
Pause>Nul
Exit
:_subdir
For /D %%s In ("%~1\*") Do (
	Set /a SubDirs +=1
	Echo %%s
	Call :_subdir "%%~s"
)
GoTo :EOF
Аватара пользователя
kelevara

Re: CMD/BAT - [решено] Определение количества подкаталогов

Сообщение kelevara »

Они хотели рекурсию — они её получили! Изображение





Код:

Код: Выделить всё

dir /s /b /a:d | find.exe /v "" /c

Условиям ТЗ задачи:


Цитата kelevara:



нужно использовать For /D (такое вот странное требование)
CMD/BAT - [решено] Определение количества подкаталогов




разумеется, не удовлетворяет.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»