如何统计项目代码?So easy~

大家好,我是 Java陈序员,我们无论是卑微的码农还是项目管理者,常常需要统计项目的代码行数,甚至有时候代码行数的多少会影响年终😭。

虽然说 IDE 能帮忙统计代码行数,但往往只是单文件内、单语言的统计,如果是一个庞大的项目要如何统计呢?

今天,给大家介绍一个统计项目代码行数的工具------ cloc.

项目介绍

cloc 支持对多种编程语言中的空白行、注释行和源代码的物理行进行计数。

给定代码库的两个版本,cloc 可以计算空白行、注释行和源代码行中的差异。

除了统计单个文本文件、目录和 git 存储库中的代码外, cloc 还可以统计 .tar (包括压缩版本)、 .zip.whlipynb.rpm.src.deb 等类型的文件。

项目地址:

bash 复制代码
https://github.com/AlDanial/cloc

下载地址:

bash 复制代码
https://github.com/AlDanial/cloc/releases

安装使用

可以根据操作系统,选择对应的方法进行安装:

bash 复制代码
 
npm install -g cloc              # https://www.npmjs.com/package/cloc
sudo apt install cloc            # Debian, Ubuntu
sudo yum install cloc            # Red Hat, Fedora
sudo dnf install cloc            # Fedora 22 or later
sudo pacman -S cloc              # Arch
sudo emerge -av dev-util/cloc    # Gentoo https://packages.gentoo.org/packages/dev-util/cloc
sudo apk add cloc                # Alpine Linux
doas pkg_add cloc                # OpenBSD
sudo pkg install cloc            # FreeBSD
sudo port install cloc           # macOS with MacPorts
brew install cloc                # macOS with Homebrew
choco install cloc               # Windows with Chocolatey
scoop install cloc               # Windows with Scoop

Windows 系统,也可以选择下载 .exe 文件:

使用 cmd 命令窗口执行。

统计单个文件代码

指定某个文件来统计行数

统计整个项目代码

统计整个项目代码,可以看到可以根据不同的语言来输出文件数、空行、注释和代码行数

统计压缩包代码

cloc 更为强大的一点是可以统计压缩包里面的代码行数!

不同格式输出

cloc 可以将代码统计结果按照不同格式输出,只要在后见加上参数即可。比如想要输出 JSON 格式,则使用参数 --json.

JSON 的格式输出

Yaml 的格式输出

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

bash 复制代码
https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

bash 复制代码
https://chencoding.top:8090/#/

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!

相关推荐
lyj16899716 分钟前
vue-i18n+vscode+vue 多语言使用
前端·vue.js·vscode
程序员岳焱1 小时前
Java 与 MySQL 性能优化:Java 实现百万数据分批次插入的最佳实践
后端·mysql·性能优化
麦兜*1 小时前
Spring Boot启动优化7板斧(延迟初始化、组件扫描精准打击、JVM参数调优):砍掉70%启动时间的魔鬼实践
java·jvm·spring boot·后端·spring·spring cloud·系统架构
大只鹅2 小时前
解决 Spring Boot 对 Elasticsearch 字段没有小驼峰映射的问题
spring boot·后端·elasticsearch
小白变怪兽2 小时前
一、react18+项目初始化(vite)
前端·react.js
ai小鬼头2 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github
IT_10242 小时前
Spring Boot项目开发实战销售管理系统——数据库设计!
java·开发语言·数据库·spring boot·后端·oracle
bobz9653 小时前
动态规划
后端
墨菲安全3 小时前
NPM组件 betsson 等窃取主机敏感信息
前端·npm·node.js·软件供应链安全·主机信息窃取·npm组件投毒
GISer_Jing3 小时前
Monorepo+Pnpm+Turborepo
前端·javascript·ecmascript