统计源代码总行数的shell脚本
最近几个月,一直看开源软件的源代码,于是刚开始的时候就喜欢选择源代码行数少的,所以自己就写了一个统计c++开源软件的行数的shell程序,虽然很简单,但是感觉还是很实用。
#!/bin/sh find . \( -name "*.cc" -o -name "*.h" \) -exec wc -l {} \; | sort -n | awk '{print $1}' > output.result awk '{ sum = sum + $1} END {print "sum is " sum}' < output.result #awk -f hhh < output.result rm output.result exit
这是刚开始写的,后来仔细一想实际上只要一行就够了。
#!/bin/sh find . \( -name "*.cc" -o -name "*.h" \) -exec wc -l {} \; | sort -n | awk '{print $1}' | awk '{ sum = sum + $1} END {print "sum is " sum}' exit
这里简单说一下我的思路:
1.用find命令找出当目录下所有以.cc和.h结尾的文件
2.用wc -l这个命令统计行数
3.然后排序,从小到大,主要为了看起舒服
4.用awk命令把所有的行数加到一起,然后输出。