一行代码统计工程的代码注释率

老板搞了个竞赛,统计工程的注释率,因为平时大家工作都很忙,没什么时间整这个,为了节省时间,我用最短的时间写了最少的代码来完成,记录一下。

支持6种语言 c/c++/php/oc/swift/java

使用说明:

HOW TO USE:

bash annotation.sh [你的工程目录]

EXAMPLE:

bash annotation.sh ./  #当前目录

bash annotation.sh ~/Documents/zhidaoapp/    #指定某目录

SUPPORTED LANGUAGE:

C/C++/OC/SWIFT/JAVA/PHP

OUTPUT:

/***************Result***************/

Code Annotation Rate: 代码注释率(注释行数/有效代码行数)

Code Lines without blank lines: 去掉空行的代码行数

Code Annotation Lines NO.: 注释行数

All Lines NO.: 所有代码行数(包括空行)

PS:

注释行包括以下三种注释

1、

/////

2、

/*....*/

3、

/*

a

b

c

*/

#!/bin/sh

find $1 -name "*.c" -o -name "*.cpp" -o -name "*.java" -o -name "*.h" -o -name "*.swift" -o -name "*.php" -o -name "*.m" | xargs  awk '{a++;}; /(.+)/{l++;}; /\*\//{i=i+NR;}; /\/\*/{n=n+NR; m++}; /\/\//{x++}; END {print "/***************Result***************/"; print "Code Annotation Rate: "(i-n+m+x)/l; print "Code Lines without blank lines: "l; print "Code Annotation Lines NO.: "i-n+m+x; print "All Lines NO.: "a}'

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容