Открыть случайную вложенную папку

В каталоге находится неопределённое количество вложенных папок. Все вложенные папки первого уровня, то есть внутри них нет других вложенных папок. Нужно выбрать случайную вложенную папку в каталоге и открыть её, например, в проводнике.

В принципе, лет десять назад я писал похожий код для открытия случайного файла в каталоге, но как переделать его для случайной папки - не знаю:

@echo off
setlocal EnableDelayedExpansion
set i=0
for %%f in ("Каталог\*.*") do (
    set file!i!=%%f
    set /a i+=1
)
set /a n=%random% %% %i%
set file=!file%n%!
start "" "%file%"

Ответы (1 шт):

Автор решения: Алексей Р

Почти то же самое можно использовать с небольшой модификацией

FOR /D %переменная IN (набор) DO команда [параметры]

Если набор содержит подстановочные знаки, команда выполняется
для всех подходящих имен каталогов, а не имен файлов.

Из справки for /? в консоли.

@echo off
setlocal EnableDelayedExpansion
set i=0

for /D %%d in ("c:\test\folder\*") do (
    set dirs!i!=%%d
    set /a i+=1
)
set /a n=%random% %% %i%
set d=!dirs%n%!
start %windir%\explorer.exe "%d%"
→ Ссылка