linux - 行数 - 如何排除目录和图像?
问题描述
为了计算我的存储库的行数,我输入了下面的代码,发现图像和 pdf 也包含在字数中。
git ls-files | xargs wc -l
当有人问你存储库的规模时,你会包括图像/pdf吗?如果没有,有人可以帮我回答以下问题吗?
- 如何排除“/pdfs”目录下的文件
- 如何排除 .jpg 和 .png?
解决方案
您可以使用cloc。它计算许多编程语言中源代码的空白行、注释行和物理行。Cloc可以将文件、目录和/或存档名称作为输入。例如,如果您想计算存储库中的代码行数并在计算时排除某些目录,您可以像这样指定用逗号分隔的目录:
cloc --exclude-dir=imagedir,pdfdir your_repository
cloc将向您显示这样的报告:
387 text files.
387 unique files.
22 files ignored.
github.com/AlDanial/cloc v 1.88 T=0.97 s (376.5 files/s, 152866.0 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Go 235 17216 11769 95308
InstallShield 2 410 0 11178
XML 41 1418 159 2738
Python 5 516 523 1792
Bourne Shell 21 266 283 1512
JSON 19 24 0 1005
Markdown 23 452 0 797
AsciiDoc 4 119 0 312
Ruby 4 44 31 238
YAML 4 4 2 113
WiX source 1 19 24 112
make 3 16 25 68
DOS Batch 2 13 2 38
WiX include 1 0 0 28
Dockerfile 1 13 9 17
-------------------------------------------------------------------------------
SUM: 366 20530 12827 115256
-------------------------------------------------------------------------------
你也可以像这样在 Git 中使用 CLOC:
cloc $(git ls-files)
这相当于
git ls-files | xargs cloc
推荐阅读
- android - 清单注册的活动不再与意图过滤器一起使用
- excel - 按标题选择一列并使用宏 ROUND 到最近的一分钱
- mysql - 使用 IN 插入获取不同的值,同时执行 INNER JOIN
- javascript - jQuery 事件处理程序不会在 Bootstrap 下拉切换的连续点击时触发
- hibernate - Hibernate many to many, with extra columns select using extra column in where
- angular - How to eliminate duplicate code multiple service calls
- javascript - Koa middleware breaks execution flow, returns BadRequest Error [ERRCONNABORTED]
- php - save image in mssql database as varbinary(max) without conversion
- sql-server - 如果字段中有空值,如何传递当前日期?
- r - data.table 使用 setDT 修改父环境/奇怪的行为