首页 > 代码库 > [Perl系列二-实战] 1. Perl 读取代码的行数

[Perl系列二-实战] 1. Perl 读取代码的行数

前言

有的时候有这些需求:

1. 统计一个文件的行数

2. 统计一个源代码的有效行数。排除空行和注释行

3. 统一一个目录下各种文件的数量和行数

要达成这些需求,很多语言多可以做到, 但是使用Perl 应该是一个不错的选择


读取文件行数

读取一个文件的总行数(空行和注释都包含) 使用Perl 很简单

open(FILE ,<>); 
my $lines_counter = 0;  
while(<>)
{
$lines_counter += 1; 
}
print "lines:  $lines_counter\n";  

当然,如果在linux 下就更简单了, 只需要敲入以下命令就可以了:

wc -l filename



源码代码行数(空格数)

统计一个源码文件的代码行数:传入参数: 文件的路径返回: 三个元素的数组; 分别是总行数, 空行行数 和注释行数注意: 这段代码目前基本使用于 Java, C, C++; 因为这里注释部分处理的是以下三种:

1.  // 行注释

2. 块注释

/*

*

*/

3.文件注释

/**

*

*/

完整代码:

<script src="https://code.csdn.net/snippets/405184.js" type="text/javascript"></script>


源代码行数统计工具 (Perl 版本)

1. Code Line Counter

这个是一个收费的软件,
也有免费版,但有限制, 一次只能统计 10 份文件。

下载地址:

http://codelinecounter.bistonesoft.com/clcperl.htm

下载之后进行安装

运行之后的界面如下:


2. CLOC 

这个应该是使用的比较多的工具了。

它可以统计一个路径下各种类型文件的数量, 总的空格,代码,注释的数量。 它也可以统计一个压缩包里面的文件的状况

项目的介绍路径:

http://cloc.sourceforge.net/index.html#Basic_Use


下载路径是:

http://sourceforge.net/projects/cloc/files/cloc/v1.60/

这里提供 Perl 的源码以及打包后的exe 文件。

作为工具来说, 下载 .exe 文件。 目前最新版的文件名是 cloc-1.60.exe

使用方式就是在命令行模式上, 输入:

cloc-1.60.exe  文件路径或者压缩包名

输出的结果类似: