$ ls -l JSON_files/*.json | wc -l
bash: /usr/bin/ls: Argument list too long
0
如果目录中有 300k 或 1M 或更多的 JSON 文件,我该如何获取文件夹中文件的数量?
答案1
最简单的方法是避免命令行通配符扩展,然后从(非命令行)输出中过滤所需的名称:
ls -l JSON_files/ | fgrep .json | wc
答案2
ls -f *.json | wc -l
“默认情况下,ls 会对名称进行排序,如果名称很多,则可能需要一段时间。此外,在读取并排序所有名称之前,不会有任何输出。使用 ls -f 选项可关闭排序。”
原始命令:
ls -f | wc -l
回答于 2009 年 9 月 15 日 13:55,mark4o
来源:针对大量文件的快速 Linux 文件计数 https://stackoverflow.com/questions/1427032/fast-linux-file-count-for-a-large-number-of-files
find . -name "*.json" | wc -l