我用它dir /s
来查看文件夹中的所有文件和指令。但这也显示 . 目录。我几乎有 100 多个顶级和内部文件夹。当我执行上述命令时,结果不准确。
如何使用窗口命令提示符获取准确的文件和目录数量?
答案1
递归计数文件:
set filesCount=0 & (for /R %f in (*) do @(set /a filesCount+=1 > nul)) & set filescount
递归计算目录数:
set dirsCount=0 & (for /D /R %f in (*) do @(set /a dirsCount+=1 > nul)) & set dirscount
资源:FOR
循环命令。
编辑:如果您关心隐藏文件,请比较以下结果:
d:\bat> set filesCount=0 & (for /R %f in (*) do @(set /a filesCount+=1 > nul)) & set filescount
filesCount=3095
d:\bat> set filesCount=0 & (for /F "delims=" %f in ('dir /b /s /a-h-d') do @(set /a filesCount+=1 > nul)) & set filescount
filesCount=3095
d:\bat> set filesCount=0 & (for /F "delims=" %f in ('dir /b /s /ah-d') do @(set /a filesCount+=1 > nul)) & set filescount
filesCount=10
d:\bat> set filesCount=0 & (for /F "delims=" %f in ('dir /b /s /a-d') do @(set /a filesCount+=1 > nul)) & set filescount
filesCount=3105
应用于目录 (予以适当修改)依次使用dir
开关/aD
、/aHD
和/a-HD
。