Поиск по сайту:

Cloc — подсчитайте строки исходного кода на многих языках программирования

Как разработчику вам может потребоваться поделиться ходом работы и статистикой вашего кода с вашим начальником или коллегами. Ваш начальник может захотеть проанализировать код и предоставить дополнительную информацию. Насколько мне известно, в таких случаях существует мало программ для анализа исходного кода. Одной из таких программ является Ohcount. Сегодня я наткнулся на еще одну подобную утилиту, а именно Cloc. Используя Cloc, вы можете легко посчитать строки исходного кода на нескольких языках программирования. Он подсчитывает пустые строки, строки комментариев и физические строки исходного кода и отображает результат в аккуратном формате таблиц и столбцов. Cloc — бесплатная кроссплатформенная утилита с открытым исходным кодом, полностью написанная на языке программирования Perl.

Функции

Cloc обладает многочисленными преимуществами, включая следующие:

  • Простота установки/использования. Не требует никаких зависимостей.
  • Портативный
  • Он может выдавать результаты в различных форматах, таких как обычный текст, SQL, JSON, XML, YAML, значения, разделенные запятыми.
  • Можете посчитать ваши git-коммиты.
  • Посчитайте код в каталогах и подкаталогах.
  • Подсчет кодов Подсчет кода в сжатых архивах, таких как tar-шары, Zip-файлы, файлы Java .ear и т. д.
  • Открытый исходный код и кроссплатформенность.

Установка часов

Утилита Cloc доступна в репозиториях по умолчанию большинства Unix-подобных операционных систем. Таким образом, вы можете установить его, используя менеджер пакетов по умолчанию, как показано ниже.

В Arch Linux и его вариантах:

sudo pacman -S cloc

В Дебиане, Убунту:

sudo apt-get install cloc

В CentOS, Red Hat, Scientific Linux:

sudo yum install cloc

В Федоре:

sudo dnf install cloc

Во FreeBSD:

sudo pkg install cloc

Его также можно установить с помощью стороннего менеджера пакетов, например NPM.

npm install -g cloc

Подсчитайте строки исходного кода на многих языках программирования

Начнем с простого примера. У меня есть программа «Привет, мир», написанная на C, в моем текущем рабочем каталоге.

cat hello.c 
#include <stdio.h>
int main()
{
     // printf() displays the string inside quotation
     printf("Hello, World!");
     return 0;
}

Чтобы подсчитать строки кода в программе hello.c, просто запустите:

cloc hello.c

Пример вывода:

Удалите строки в программе Hello World с помощью Cloc

В первом столбце указано название языков программирования, из которых состоит исходный код. Как видно из приведенного выше вывода, исходный код программы «Hello World» написан с использованием языка программирования C.

Во втором столбце отображается количество файлов на каждом языке программирования. Итак, наш код всего содержит 1 файл.

В третьем столбце отображается общее количество пустых строк. В нашем коде нет пустых файлов.

В четвертом столбце отображается количество строк комментариев.

А в последнем и пятом столбце отображается общее количество физических строк данного исходного кода.

Это всего лишь программа из 6 строк кода, поэтому подсчет строк кода не составляет большого труда. А как насчет какого-то большого файла исходного кода? Взгляните на следующий пример:

cloc file.tar.gz

Пример вывода:

Подсчет строк в файле tar

Согласно приведенному выше выводу, вручную найти точное количество кода довольно сложно. Но Cloc отображает результат за секунды в удобном формате табличных столбцов. В конце вы можете просмотреть общую сумму каждого раздела, что очень удобно при анализе исходного кода программы.

Cloc считает не только отдельные файлы исходного кода, но также файлы внутри каталогов и подкаталогов, архивов и даже в определенных коммитах git и т. д.

Подсчитайте строки кодов в каталоге:

cloc dir/

Подкаталог:

cloc dir/cloc/tests

Посчитайте строки кодов в архивном файле:

cloc archive.zip

Вы также можете подсчитать строки в репозитории git, используя конкретный коммит, как показано ниже.

git clone https://github.com/AlDanial/cloc.git
cd cloc
cloc 157d706

Cloc может распознавать несколько языков программирования. Чтобы просмотреть полный список распознаваемых языков, запустите:

cloc --show-lang

Для получения более подробной информации обратитесь к разделу помощи.

cloc --help

Ресурс:

  • Репозиторий Cloc на GitHub

Статьи по данной тематике