linux统计代码注释率,统计代码注释率

#!/bin/bash

#program:

#       分析.c,.cpp文件,计算文件行总数,代码行总数,注释行总数,空白行总数,代码注释率

#       注释类型:

#       (1)行注释"//这里是注释内容"

#       (2)块注释"/*这里是注释内容*/"

#History:

#2013/12/16 Fgx First release

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

#fileName="/home/fgx/hello_new.c"

echo "-----------------------">> result.txt

date >>result.txt

echo "统计的文件名:">>result.txt

echo "$fileName" >>result.txt

echo >>result.txt

echo "----===统计结果===----">>result.txt

declare -i fileLine=`cat $fileName | wc -l`

echo  "文件行总数:"$fileLine"" >>result.txt

declare -i codeLine=`cat $fileName | grep -v '^[[:space:]]*$'|grep -v '^[[:space:]]*\/\/' |sed '/\/\*/,/\*\//d' | wc -l`

echo  "代码行总数:"$codeLine"" >>result.txt

declare -i noNoteLine=`cat $fileName |  sed '/\/\*/,/\*\//d' | sed '/\/\//d'|wc -l`

declare -i noteLine=0

((noteLine=fileLine-noNoteLine))

echo  "注释行总数:"$noteLine"" >>result.txt

declare -i blankLine=`cat $fileName | grep '^[[:space:]]*$' |wc -l`

echo  "空白行总数:"$blankLine"" >>result.txt

declare -i line=0

((line=noteLine+codeLine))

echo -n  "代码注释率:" >>result.txt

awk 'BEGIN{printf "%.2f%\n",('$noteLine'/'$line')*100}' >>result.txt

echo "----==============----" >>result.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值