1.使用这种方式效率较低,而且不注意可能出现错误
find . -name "*.pc" |xargs wc -l
直接查看 total 不是正确的值。
原因:
这种方式存在一个问题,如果pc的总行数达到几百万时,会自动截断,统计出多个 total (具体原因需通过源码分析)
需要将多个total 进行求和,才是总行数。
方法:
find . -name "*.pc" |xargs wc -l |awk ‘/total/{a+=$1}END{print a}‘
2.使用这中方式效率和结果都ok
find . -name "*.pc" |xargs cat |wc -l