我想创建一个 Windows 批处理文件,其中列出用户指定的根目录下存在的所有空子目录。
任何人都可以帮忙解决同样的问题吗?
最佳答案
@echo off
for /d /r %1 %%A in (.) do (
dir /a /b "%%~fA" 2>nul | findstr "^" >nul || echo %%~fA
)
上述解决方案忽略隐藏文件夹。我还被告知,在 FOR 中同时使用/D 和/R 选项会出现问题,尽管我从来没有遇到过问题。
<小时/>@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
)
避免 FOR/D/R 的第二个解决方案将包括隐藏文件夹。但我相信如果文件夹名称包含 Unicode,它可能会失败。
关于batch-file - 如何使用Windows批处理文件列出所有空目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9884729/