You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何统计所有名为'my Dir'的目录下后缀为.csv的文件数量

原命令错误原因

  • 通配符*被包裹在引号中,shell不会执行路径展开,ls实际会尝试查找名称为*.csv的字面量文件,无法匹配到目标csv文件
  • 若某my Dir目录下没有csv文件,ls会输出错误提示,这些内容会被wc -l统计造成结果偏差;同时如果csv文件名包含换行符,直接统计行数也会出现计数错误

正确解决方案

场景1:仅统计my Dir根目录下的csv文件,不包含其子目录内的文件

find . -type d -name "my Dir" -exec find {} -maxdepth 1 -type f -name "*.csv" -print0 \; | wc -l --files0-from=-

场景2:统计my Dir下所有层级的csv文件,包含其子目录内的文件

find . -type d -name "my Dir" -exec find {} -type f -name "*.csv" -print0 \; | wc -l --files0-from=-

命令说明

  • 用-print0以ASCII 0作为文件名分隔符,完美兼容带空格、特殊符号、换行的文件名/目录名
  • 用wc -l --files0-from=-读取分隔的文件路径统计数量,不会统计错误输出,计数准确率100%

内容的提问来源于stack exchange,提问作者Sandeep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 07:45:04