找出文件夹目录中文件数量的最简单方法是什么?

时间:2011-05-15 19:16:58

标签: batch-file

这可以通过MS-DOS脚本轻松实现,还是我不得不求助于C ++,Python,Perl或其他方法来实现这一目标?

3 个答案:

答案 0 :(得分:3)

最简单的是,它必须通过“我的祖母可以做到”的基准。

经过彻底的基准测试后,我确定最简单的方法是在Windows资源管理器中打开每个文件夹,查看状态栏中的文件计数,并使用计算器添加计数。

这很慢但很有效。

修改

它可能不那么容易,但作为一个沉重的cygwin用户,我倾向于使用find命令和wc。

find -type 'f' | wc -l

答案 1 :(得分:1)

在cmd中你可以做到:

set i=0
for /f %%G in ('dir /b /A-d <dirname>') do set /a i=i+1
在PowerShell中(在Windows 7中默认可用),您可以执行以下操作:

Get-ChildItem <dirname> | Where-Object { -not $_.PSIsContainer } | Measure-Object

如果要计算目录,这些命令只计算文件,删除dos版本的/A-d和powershell命令的Where-Object { -not $_PSIsContainer }。如果要递归到子目录,请在powershell中使用Get-ChildItem -Recurse或在dos版本中将dir命令添加/s开关

答案 2 :(得分:0)

这在python中非常简单:

import os

walker = os.walk(path_to_search_root)
files = 0

for dir in walker:
    files += len(dir[2]) #dir[2] is the list of files in the directory

print files