linux - 大量文件的快速 Linux 文件计数

当存在大量文件(超过 100,000 个)时,我正在尝试找出在特定目录中查找文件数量的最佳方法。

当有那么多文件时,执行 ls | wc -l 需要相当长的时间来执行。我相信这是因为它返回了所有文件的名称。我正在尝试尽可能少地占用磁盘 I/O。

我尝试了一些 shell 和 Perl 脚本,但无济于事。我该怎么做?

最佳答案

默认情况下,ls 对名称进行排序,如果名称很多,这可能需要一段时间。在所有名称都被读取和排序之前,也不会有输出。使用 ls -f 选项关闭排序。

ls -f | wc -l

注意:这也会启用-a,所以...等文件启动与 . 将被计算在内。

https://stackoverflow.com/questions/1427032/

相关文章:

linux - 什么进程正在使用我所有的磁盘 IO

linux - 使用 awk 保存修改

python - python,del或delattr哪个更好?

linux - 查找和复制文件

python - 我在 python 中遇到关键错误

python - 在 python shell 中按箭头键时看到转义字符

c - C 到毫秒是否有替代 sleep 功能?

python - 在python中通过分隔符拆分字符串

python - BeautifulSoup 获取 href

linux - 如何来回反向搜索?