统计脚本代码行数

Posted xiangtingshen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了统计脚本代码行数相关的知识,希望对你有一定的参考价值。

 

#!/bin/bash

#统计当前文件夹(包括子文件夹)下.sh脚本有效代码行数,不包括注释,和空行

#所有行
MY_LIST_VAR=`egrep -c -h -R --include="*.sh" ^.*$`
#echo $MY_VAR
MY_ALL_COUNT=0
#所有空行
MY_LIST_SPACE_VAR=`egrep -c -h -R ^$ --include="*.sh"`
#echo $MY_LIST_SPACE_VAR
MY_ALL_SPACE_COUNT=0

#所有注释行
MY_LIST_COMMENT_VAR=`egrep -c -h -R "^#[^!]" --include="*.sh"`
#echo $MY_LIST_COMMENT_VAR
MY_ALL_COMMENT_COUNT=0

for loop in $MY_LIST_VAR 
do
    MY_ALL_COUNT=`expr $MY_ALL_COUNT + $loop`
done
for loop in $MY_LIST_SPACE_VAR 
do
    MY_ALL_SPACE_COUNT=`expr $MY_ALL_SPACE_COUNT + $loop`
done
for loop in $MY_LIST_COMMENT_VAR 
do
    MY_ALL_COMMENT_COUNT=`expr $MY_ALL_COMMENT_COUNT + $loop`
done
echo `expr $MY_ALL_COUNT -  $MY_ALL_COMMENT_COUNT - $MY_ALL_SPACE_COUNT`

 

Grep参数
-c          只输出匹配行的计数。
-I          不区分大小写(只适用于单字符)。
-h          查询多文件时不显示文件名。
-l          查询多文件时只输出包含匹配字符的文件名。
-n          显示匹配行及行号。
-s          不显示不存在或无匹配文本的错误信息。
-v          显示不包含匹配文本的所有行。

 

 

 

以上是关于统计脚本代码行数的主要内容,如果未能解决你的问题,请参考以下文章

“代码量统计脚本”

python 脚本(获取指定文件夹指定文件格式的代码行数注释行数)

代码统计工具,要支持差异统计,如:代码修改行数、删除行数、新增行数等

每日代码统计

svn代码统计

Ubuntu下统计代码行数