batch-file - 如何使用Windows批处理文件列出所有空目录?

标签 batch-file

我想创建一个 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/

相关文章:

batch-file - Windows 服务恢复 - 运行程序不起作用

variables - 如何将变量名称作为参数的一部分传递给批处理文件,然后使用它?

windows - 批处理脚本 - 如果存在复制到 %localappdata% 错误

batch-file - 如何使 .bat 文件在电脑启动时自动运行

batch-file - 为什么在用于从我的批处理脚本中读取所有行时找不到指定的文件?

windows - 进程运行时清空日志文件?

windows - 使用 .bat 文件检查文件夹是否存在

batch-file - 解析包含 = 的命令行参数

windows - xcopy txt 中的所有文件夹和子文件夹(带路径和空格)

batch-file - 如何从批处理文件中同时打开两个记事本文件?