CI_代码量统计

一、shell命令

1.代码行数统计

  • 基本统计

    find . -name "*.cpp"|xargs wc -l|grep "total"|awk '{print $1}' 
    find . -name "*.cpp"|xargs cat|wc -l

  • 去空行

    find . -name "*.java"|xargs cat|grep -v ^$|wc -l

    说明:

    上面的^$是正则表达式,^是以匹配开头,$是匹配结尾,所以^$是匹配一个空行。

  • 去注释

    find . -name "*.java"|xargs cat|grep -v -e ^$ -e ^\s*\/\/.*$|wc -l

    说明:

    1. 上面的^\s\/\/.$是正则表达式,其中^\s表明以空格(多个)开头,\/\/表明是//开头的注释,“.$”表明可能以“.”结尾

                2. 去注释版只是去掉以//开头的注释,对于以/* */包含的注释并没有去掉。
  • 统计本文件夹下.h,.cpp,.sh三种类型的文件代码行数

    find -name "*[.h|.cpp|.sh]" -type f | xargs cat | wc -l

2.git 统计

  • 查看git上个人代码量

    git log --author="username" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -

  • 统计每个人的增删行数

    git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -; done

3.统计工具

  • SourceConter

    没用过

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值