DUICUO

cloc: さまざまなプログラミング言語のソースコードの行数を計算します。

開発者として、現在の作業やコード開発の進捗状況を上司や同僚と随時共有したり、上司がコードの包括的な分析を実施したりする必要があるかもしれません。このような状況では、コード統計ツールが必要になります。私が知っているツールの1つはOhcountです。今日、私は別のプログラム、 clocに出会いました。clocを使えば、複数の言語のソースコードの行数を簡単にカウントできます。また、空白行数、コード行数、実際のコード行数を計算し、結果をきれいな表に出力することもできます。clocは、 Perlを使用して開発された、無料のオープンソースのクロスプラットフォームプログラムです。

特徴

cloc には多くの利点があります:

  • インストールと使用が簡単で、追加の依存関係は必要ありません。
  • ポータブル
  • プレーンテキスト、SQL、JSON、XML、YAML、CSV など、複数の結果形式のエクスポートをサポートします。
  • git コミットの数を計算できます。
  • フォルダー内のコード行数を再帰的に計算できます。
  • tar、zip、Java の .ear ファイルなどの圧縮ファイルを計算できます。
  • オープンソース、クロスプラットフォーム

インストール

cloc パッケージは、ほとんどの Unix 系オペレーティング システムのデフォルトのソフトウェア リポジトリに含まれているため、デフォルトのパッケージ マネージャーを使用して簡単にインストールできます。

アーチリナックス:

  1. $ sudo pacman - S cloc

Debian/Ubuntu:

  1. $ sudo apt-get install cloc

CentOS/Red Hat/Scientific Linux:

  1. $ sudo yum install cloc

フェドラ:

  1. $ sudo dnf install cloc

FreeBSDの場合:

  1. $ sudo pkg install cloc

もちろん、 NPMなどのサードパーティのパッケージ マネージャーを使用することもできます。

  1. $ npm install - g cloc

複数言語コードの統計データの使用例

まず、以下の現在の作業ディレクトリにある C コードなど、いくつかの簡単な例から始めましょう。

  1. $ cat hello . c
  2. # include < stdio . h >
  3. int main ()
  4. {
  5. // printf() displays the string inside quotation
  6. printf ( "Hello, World!" );
  7. return 0 ;
  8. }

行数をカウントするには、次のコマンドを実行します。

  1. $ cloc hello . c

出力:

***列は、分析対象ファイルのプログラミング言語を示しています。上記のように、このファイルはC言語で記述されています。

2 番目の列には、その言語のファイルの数が表示されます。画像には 1 つのファイルのみが表示されています。

3 列目には空白行の数が表示されます。画像では 0 行が表示されています。

4 列目にはコメント行の数が表示されます。

5 番目の列には、ファイル内のコードの合計行数が表示されます。

これはコードが6行しかないソースファイルですが、統計情報はかなり正確であることがわかります。では、これを使ってコード行数が多いソースファイルをカウントするにはどうすればよいでしょうか?

  1. $ cloc file . tar . gz

出力:

上記の出力を手作業で正確に数えるのは非常に困難ですが、cloc は数秒で結果を分かりやすい表形式で表示します。また、*** で各セクションの合計を確認できるため、プログラムのソースコードを解析する際に非常に便利です。

cloc は、ソース コード ファイルに加えて、各ディレクトリとそのサブディレクトリ内のファイル、圧縮ファイル、さらには git コミットの数を再帰的に計算できます。

フォルダー内で使用される例:

  1. $ cloc dir /

サブフォルダでの使用例*:

  1. $ cloc dir / cloc / tests

圧縮ファイル内のソースコードの行数を計算します。

  1. $ cloc archive . zip

また、次に示すように、Git プロジェクトのステータスを計算したり、特定のコミットのステータス統計を実行したりすることもできます。

  1. $ git clone https : //github.com/AlDanial/cloc.git
  2. $ cd cloc
  3. $ cloc 157d706

cloc は一部の言語を自動的に認識できます。cloc がサポートしている言語を確認するには、以下のコマンドを使用してください。

  1. $ cloc -- show - lang

最新情報については、cloc のヘルプ ドキュメントを参照してください。

  1. $ cloc -- help

さあ、始めましょう!