【Cloc】代码统计工具 简介

作者: 亦枫 | 来源:发表于2016-01-19 22:25 被阅读0次

代码统计

软件开发过程中,有时候需要进行代码统计,比如在申请软件著作权的时候需要进行代码统计进而提供程序源码数据。本文给大家介绍一个开源代码统计工具 —— Cloc,以供参考。

Cloc简介

Cloc是一款使用Perl语言开发的开源代码统计工具,支持多平台使用、多语言识别,能够计算指定目标文件或文件夹中的文件数(files)、空白行数(blank)、注释行数(comment)和代码行数(code)。

官网地址:http://cloc.sourceforge.net/

Cloc特性

Cloc具备很多特性以致于让它更方便于使用、完善、拓展和便携。

  1. 作为一个单一的独立形式存在的文件,Cloc只需要下载相应文件并运行这样最少的安装工作即可。

  2. 能够从源码文件中识别编程语言注释定义;

  3. 允许通过语言和项目来分开统计计算;

  4. 能够以纯文本、SQL、XML、YAML、逗号分隔等多样化的格式生成统计结果;

  5. 能够统计诸如tar、Zip等格式的压缩文件中的代码数;

  6. 有许多排除式的指令;

  7. 能够使用空格或者不常用的字符处理文件名和目录名;

  8. 不需要依赖外部标准的Perl语言配置;

  9. 支持多平台使用。

统计命令

这里以Windows平台上使用为例,统计Android SDK示例源码中的TextWatcher工程中的代码情况。

在Cloc官网下载exe文件,使用cmd命令行工具执行 "cloc targetFile" 格式的命令,统计结果如下图所示:

可以看到,在Windows命令行工具中,将各种变成语言的文件数、空行数、注释行数以及代码行数分别展示出来了,并且给出了总的统计结果。

上述只是Cloc众多命令语言中比较简单的一个,大家可以通过 "cloc -help" 查看更多命令的使用语法,在帮助中有详细的说明,比如如下命令:

通过右侧命令介绍,可以知道,使用 "cloc targetFile --report-file=result.txt" 这样的命令可以将targetFile文件的代码统计结果写入result.txt文件中,使用 "cloc targetFile --sql=result.txt" 这样的命令可以用SQL语句的形式将统计结果写入result.txt文件中。

其他工具

在Cloc官网中,作者还友情链接了其他的一些统计工具,如SLOCCountSonarOhcount等,感兴趣的朋友可以了解一下。

欢迎关注亦枫微信公众号:【技术鸟】(微信号:NiaoTech),一起学习,交流共享。

相关文章

  • 【Cloc】代码统计工具 简介

    代码统计 软件开发过程中,有时候需要进行代码统计,比如在申请软件著作权的时候需要进行代码统计进而提供程序源码数据。...

  • 代码统计工具cloc及其它

    cloc 简介 Cloc是一款使用Perl语言开发的开源代码统计工具,支持多平台使用、多语言识别,能够计算指定目标...

  • window中代码统计工具 cloc 介绍及使用

    Cloc简介 Cloc是一款使用Perl语言开发的开源代码统计工具,支持多平台使用、多语言识别,能够计算指定目标文...

  • Cloc简介

    Cloc简介 Cloc是一款使用Perl语言开发的开源代码统计工具,支持多平台使用、多语言识别,能够计算指定目标文...

  • cloc实用代码统计工具

    简介:cloc是一个非常小型高效开源免费的代码统计工具,支持linux、windows、mac系统。能统计的语言非...

  • linux小工具集锦

    cloc 统计代码量 terminator 终端分屏工具 pulseaudio 设置模拟耳机输出(解决机箱前置耳机...

  • 代码统计工具cloc使用

    一、安装cloc brew install cloc 二、统计某文件夹下代码量 cloc /usrs/...

  • 代码统计cloc

    使用npm安装 npm install -g cloc全局安装 http://cloc.sourceforge...

  • cloc 代码统计

    参考文章:https://www.cnblogs.com/abc-begin/p/8136665.html Clo...

  • 代码行数统计工具(cloc)

    安装 使用 进入项目目录,然后执行如下命令:

网友评论

    本文标题:【Cloc】代码统计工具 简介

    本文链接:https://www.haomeiwen.com/subject/rhxlkttx.html