Ohcount:原始碼行計數器和分析器
Ohcount 是一個簡單的命令列工具,可用於分析原始碼並列印程式碼的總行數。它不僅僅是程式碼行計數器,還可以在含有大量程式碼的目錄中檢測流行的開源許可證,例如 GPL。此外,Ohcount 還可以檢測針對特定程式設計 API(例如 KDE 或 Win32)的程式碼。在編寫本指南時,Ohcount 目前支援 70 多種流行的程式語言。它用 C 語言編寫,最初由 Ohloh 開發,用於在 www.openhub.net 中生成報告。
在這篇簡短的教程中,我們將介紹如何安裝和使用 Ohcount 來分析 Debian、Ubuntu 及其變體(如 Linux Mint)中的原始碼檔案。
Ohcount – 程式碼行計數器
安裝
Ohcount 存在於 Debian 和 Ubuntu 及其派生版的預設倉庫中,因此你可以使用 APT 軟體包管理器來安裝它,如下所示。
$ sudo apt-get install ohcount
用法
Ohcount 的使用非常簡單。
你所要做的就是進入你想要分析程式碼的目錄並執行程式。
舉例來說,我將分析 coursera-dl 程式的原始碼。
$ cd coursera-dl-master/
$ ohcount
以下是 Coursera-dl 的行數摘要:
如你所見,Coursera-dl 的原始碼總共包含 141 個檔案。第一列說明原始碼含有的程式語言的名稱。第二列顯示每種程式語言的檔案數量。第三列顯示每種程式語言的總行數。第四行和第五行顯示程式碼中由多少行註釋及其百分比。第六列顯示空行的數量。最後一列和第七列顯示每種語言的全部程式碼行數以及 coursera-dl 的總行數。
或者,直接使用下面的完整路徑。
$ ohcount coursera-dl-master/
路徑可以是任何數量的單個檔案或目錄。目錄將被遞迴探測。如果沒有給出路徑,則使用當前目錄。
如果你不想每次都輸入完整目錄路徑,只需 cd 進入它,然後使用 ohcount 來分析該目錄中的程式碼。
要計算每個檔案的程式碼行數,請使用 -i
標誌。
$ ohcount -i
示例輸出:
當您使用 -a
標誌時,ohcount 還可以顯示帶標註的原始碼。
$ ohcount -a
如你所見,顯示了目錄中所有原始碼的內容。每行都以製表符分隔的語言名稱和語義分類(程式碼、註釋或空白)為字首。
有時候,你只是想知道原始碼中使用的許可證。為此,請使用 -l
標誌。
$ ohcount -l
lgpl3, coursera_dl.py
gpl coursera_dl.py
另一個可用選項是 -re
,用於將原始實體資訊列印到螢幕(主要用於除錯)。
$ ohcount -re
要遞迴地查詢給定路徑內的所有原始碼檔案,請使用 -d
標誌。
$ ohcount -d
上述命令將顯示當前工作目錄中的所有原始碼檔案,每個檔名將以製表符分隔的語言名稱為字首。
要了解更多詳細資訊和支援的選項,請執行:
$ ohcount --help
對於想要分析自己或其他開發人員開發的程式碼,並檢查程式碼的行數,用於編寫這些程式碼的語言以及程式碼的許可證詳細資訊等,ohcount 非常有用。
就是這些了。希望對你有用。會有更好的東西。敬請關注!
乾杯!
via: https://www.ostechnix.com/ohcount-the-source-code-line-counter-and-analyzer/
相關文章
- 一個詞法分析器原始碼的剖析詞法分析原始碼
- 實現指令碼直譯器 - 詞法分析器指令碼詞法分析
- Elasticsearch Analysis 分析器Elasticsearch
- 詞法分析器詞法分析
- 深入講解Flutter應用模板原始碼:計數器示例Flutter原始碼
- Ruby 和 Python 分析器是如何工作的?Python
- Lex詞法分析器詞法分析
- 詞法分析器Java詞法分析Java
- PostgreSQL 原始碼解讀(167)- 查詢#87(基礎知識-語法分析器Bison)SQL原始碼語法分析
- 統計程式碼行數
- PHPFuzzing行動——原始碼審計PHP原始碼
- VS 統計程式碼行數
- 直播電商原始碼,商品出售倒數計時的定時器效果原始碼定時器
- 詞法分析器的實現詞法分析
- 逆火網站日誌分析器網站
- MySQL SQL Profiler效能分析器(轉)MySql
- 元件 popup 設計和原始碼剖析元件原始碼
- 文字和原始碼編輯器EditRocket for Mac原始碼Mac
- 利用shell指令碼統計程式碼行數指令碼
- 統計java程式碼行數工具Java
- 讀 Runtime 原始碼:物件與引用計數原始碼物件
- CoreOS釋出Clair,容器映象分析器AI
- SQL 效能分析器(SPA)工具概覽SQL
- 【MySQL】如何使用SQL Profiler 效能分析器MySql
- Pycharm——安裝mypy(靜態分析器)PyCharm
- Monkey 01 lexer 詞法分析器詞法分析
- HashMap原始碼解析和設計解讀HashMap原始碼
- 程式設計師的成長和程式碼行數的關係程式設計師
- 熔斷器 Hystrix 原始碼解析 —— 執行命令方式原始碼
- Picasso原始碼分析(二):預設的下載器、快取、執行緒池和轉換器原始碼快取執行緒
- Lucene中文分析器的中文分詞準確性和效能比較中文分詞
- Netty原始碼分析之ByteBuf引用計數Netty原始碼
- 原始碼分析:CountDownLatch 之倒數計時門栓原始碼CountDownLatch
- 統計程式碼行數的方法梳理
- 統計專案內程式碼行數
- 統計程式碼行數簡易程式
- Guava Cache:核心引數深度剖析和原始碼分析Guava原始碼
- 執行時資料區——程式計數器