@echo off
for /d /r %1 %%A in (.) do (
dir /a /b "%%~fA" 2>nul | findstr "^" >nul || echo %%~fA
)
Приведенное выше решение игнорирует скрытые папки.Мне также сказали, что использование обоих параметров / D и / R с FOR ошибочно, хотя у меня никогда не было с этим проблем.
@echo off
dir /a /b %1 2>nul | findstr "^" >nul || echo %%~fA
for /f "eol=: delims=" %%A in ('dir /s /ad /b %1') do (
dir /a /b "%%~fA" 2>nul | findstr "^" >nul || echo %%~fA
)
2-е решение, в котором не используется FOR /D / R будет включать скрытые папки.Но я полагаю, что это может дать сбой, если имена папок содержат Unicode.