温馨提示×

如何统计linux文件数量

小樊
45
2026-09-01 15:19:28
栏目: 智能运维

在 Linux 中统计文件数量,常见需求有几种情况,下面按不同场景给你总结常用命令。


一、统计当前目录下的文件数量(不含子目录)

ls -l | grep "^-" | wc -l

说明:

  • ls -l:列出详细信息
  • grep "^-":只匹配普通文件(以 - 开头)
  • wc -l:统计行数

✅ 只统计文件,不包含目录


二、统计当前目录下的文件数量(包含子目录)

find . -type f | wc -l

说明:

  • find .:从当前目录开始查找
  • -type f:只找普通文件
  • wc -l:统计数量

✅ 最常用的方式


三、统计某个目录下的文件数量(不包含子目录)

find /path/to/dir -maxdepth 1 -type f | wc -l

四、统计目录数量

find . -type d | wc -l

(包含当前目录 .

如果不想算当前目录:

find . -type d -not -path "." | wc -l

五、按文件类型统计(示例)

统计 .txt 文件数量

find . -type f -name "*.txt" | wc -l

统计所有文件(不含隐藏文件)

find . -type f -not -name ".*" | wc -l

六、统计某目录下每个子目录的文件数

for dir in */; do
  echo "$dir: $(find "$dir" -type f | wc -l)"
done

七、快速但不够严谨的方式(不推荐大目录)

ls | wc -l

⚠️ 会包含目录,且对文件名含换行的情况不准


如果你能说明:

  • 是否包含子目录
  • 是否包含隐藏文件
  • 是否只统计某种后缀

我可以给你更精确的命令。

0