统计所有的.class文件

5
我想要统计项目目录中所有.class文件的数量。我正在使用Ubuntu操作系统。我可以像这样列出所有的class文件 -
find . -type f -name '*.class'

它列出了许多 .class 文件。但我想知道这些 .class 文件的数量。在 Linux 中有没有方法可以做到这一点。
谢谢。
1个回答

5

使用wc -l命令。

wc代表“单词计数”,其-l标志使其计算行数。

由于您的命令每个文件输出一行1,因此计算行数意味着计算文件数。

find . -type f -name '*.class' | wc -l

1 请注意@chepner的评论


对于Java类文件(其中名称必须与类名匹配),这是安全的。一般来说,文件名可能包含换行符,这会人为地增加计数。不要输出文件名本身,而是输出一个没有换行符的固定字符串(find . -type f -name '*.class' -exec echo 1,或更有效率的方式,如果支持的话,使用find ... -printf "\1n")。 - chepner
@chepner,安排printf还有更好的方法:如果使用GNU find,则可以使用find...-printf'x',然后计算字符数。对于不支持printffind,请使用系统的printffind ... -exec printf '%.sx' {} +然后同样地计算字符数。要计算字符数,可以使用xs = $(find...-printf x); echo“$ {# xs}” - gniourf_gniourf

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接