CMD 检测目录下所有的空文件夹

@echo off
chcp 65001

echo 以下为 %cd% 中的空目录检测结果 > 空目录检测结果.txt
for /f "tokens=*" %%i in ('dir /s/b/ad') do (
    
    echo 正在处理中...%%i
    dir /a/b "%%i" 2> nul | findstr /r ".*" >nul || (
        
        echo %%i>> 空目录检测结果.txt
    )
)

echo 检测完毕
notepad ./空目录检测结果.txt
del 空目录检测结果.txt``
  • chcp 65001 设置utf-8编码解决中文乱码。批处理脚本也得是utf-8编码的
  • for /f 这会让 in后的语句执行,将结果循环,而不是将语句当作字符串看待
  • "tokens=*" 这将不会让语句执行结果中的空格中断当前行的输出(带空格的文件夹/路径)
  • /a/b a全部 b简略模式
  • findstr /r /r 正则模式
    • 匹配到可见字符即文件夹非空
    • 否则输入到结果文件中
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容