Chinaunix首页 | 论坛 | 博客
  • 博客访问: 13932
  • 博文数量: 3
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 62
  • 用 户 组: 普通用户
  • 注册时间: 2013-12-20 09:46
文章分类

全部博文(3)

文章存档

2014年(1)

2013年(2)

我的朋友

分类: LINUX

2013-12-23 15:20:40

#!/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

阅读(3598) | 评论(1) | 转发(1) |
0

上一篇:没有了

下一篇:linux chage命令

给主人留下些什么吧!~~

niao59292013-12-24 17:54:46

其实按照图灵的说法,人们书写出来的程序本身就是机器行为的描述,而注释就是描述的描述,所以我觉得我们应该努力掌握程序设计本身