Linux统计JAVA源代码行数_在Linux下使用cloc来统计多种编程语言源代码行数

如果你是一名开发人员,肯定需要 cloc、Ohcount 工具,它可以统计出多种语言的源代码行数,并且能计算空行数、代码行数、实际代码的行数,并通过整齐的表格进行结果输出。cloc 是开源的跨平台程序,使用 Perl 进行开发,下面介绍在 Linux 系统中安装 cloc 及使用实例。

cloc 主要优势

安装方便而且易用,不需要额外的依赖项。

可移植。

支持多种的结果格式导出,包括:纯文本、SQL、JSON、XML、YAML、CSV。

可以计算 git 的提交数。

可递归计算文件夹内的代码行数。

可计算压缩后的文件,如:tar、zip、Java 的 .ear 等类型。

开源,跨平台。

在 Linux 系统中安装 cloc

cloc 的安装包在大多数的类 Unix 操作系统的默认软件库内,所以你只需要使用默认的包管理器安装即可。

1.Arch Linux:

$ sudo pacman -S cloc

2.Debian/Ubuntu:

$ sudo apt-get install cloc

3.CentOS/Red Hat/Scientific Linux:

$ sudo yum install cloc

4.Fedora:

$ sudo dnf install cloc

5.FreeBSD:

$ sudo pkg install cloc

6.当然你也可以使用第三方的包管理器,比如 NPM:

$ npm install -g cloc

cloc 统计多种语言代码数据的使用举例

首先来几个简单的例子,比如下面在我目前工作目录中的的 C 代码:

$ cat hello.c

#include

int main()

{

// printf() displays the string inside quotation

printf("Hello, World!");

return 0;

}

想要计算行数,只需要简单运行:

$ cloc hello.c

输出:

afdd03cc4873822934172c78cfb0a8b0.png

第一列是被分析文件的编程语言,上面我们可以看到这个文件是用 C 语言编写的。

第二列显示的是该种语言有多少文件,图中说明只有一个。

第三列显示空行的数量,图中显示是 0 行。

第四列显示注释的行数。

第五列显示该文件中实际的代码总行数。

这是一个有只有 6 行代码的源文件,我们看到统计的还算准确,那么如果用来统计一个行数较多的源文件呢?

$ cloc file.tar.gz

输出:

6cadcfa7f6243ef9d368f17abd661bc2.png

上述输出结果如果手动统计准确的代码行数非常困难,但是 cloc 只需要几秒,而且以易读的表格格式显示结果。你还可以在最后查看每个部分的总计,这在分析程序的源代码时非常方便。

除了源代码文件,cloc 还能递归计算各个目录及其子目录下的文件、压缩包、甚至 git commit 数目等。

文件夹中使用的例子:

$ cloc dir/

fa52c94171efb413fac5d14dd164b4e6.png

子文件夹中使用的例子*:

$ cloc dir/cloc/tests

b86f59b5cc036f4bd7ef086ece369728.png

计算一个压缩包中源代码的行数:

$ cloc archive.zip

014c96b807d22eda40b29e36fe8e1589.png

你还可以计算一个 git 项目,也可以像下面这样针对某次提交时的状态统计:

$ git clone https://github.com/AlDanial/cloc.git

$ cd cloc

$ cloc 157d706

671e735c201f83e20e8a77b514af6ee0.png

cloc 可以自动识别一些语言,使用下面的命令查看 cloc 支持的语言:

$ cloc --show-lang

cloc 使用帮助

如果需要更多的 cloc 使用帮助,请运行以下命令:

$ cloc --help

相关主题

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值