这里推荐个Perl语言开发的开源代码统计工具cloc,全称为Count Lines of Code。支持多平台使用、多编程语言识别。
在Ubuntu下安装cloc:
sudo apt-get install cloc
运行cloc可以cd到指定目录运行:
cloc .
# 或者例如统计src目录下的代码行数
cloc /src
指定统计多个目录用空格分开:
cloc dir0 dir1
在执行完命令之后,cloc会计算不同编程语言的文件数(files),空行数(blank),注释行数(comment)和代码行数(code),并且也会最后返回SUM总数,例如:
用help可以查看cloc支持的命令:
cloc --help
常用的有,例如不想统计目录下某个文件夹或者文件的代码,比如这里为app文件夹:
cloc . --exclude-dir=app
多个文件或者目录用逗号分隔:
cloc . --exclude-dir=app,boards
也可以排除指定的文件扩展名:
--exclude-ext=<ext0>,<ext1>
另外还有比较目录之间代码差异:
# --diff <dir0> <dir1>
cloc --diff app boards