cloc - Skaitīt koda rindas daudzās programmēšanas valodās


Strādājot pie dažādiem projektiem, dažreiz jums var nākties iesniegt pārskatu vai statistiku par savu progresu vai vienkārši aprēķināt koda vērtību.

Ir šis vienkāršais, taču spēcīgais rīks, ko sauc par “cloc - count code lines”, kas ļauj saskaitīt visu koda skaitu un vienlaikus izslēgt komentārus un tukšās rindas.

Tas ir pieejams visos lielākajos Linux izplatījumos un atbalsta vairākas programmēšanas valodas un failu paplašinājumus, un tam nav īpašu izmantojamu prasību.

Šajā apmācībā jūs uzzināsiet, kā Linux sistēmā instalēt un izmantot cloc.

Kā instalēt un izmantot Cloc Linux sistēmās

Cloc instalēšana ir vienkārša un vienkārša. Zemāk jūs varat redzēt, kā instalēt cloc dažādās operētājsistēmās kopā ar saistītajiem pakotņu pārvaldniekiem:

$ 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
$ sudo pkg install cloc                  # FreeBSD
$ sudo port install cloc                 # Mac OS X with MacPorts
$ brew install cloc                      # Mac OS X with Homebrew
$ npm install -g cloc                    # https://www.npmjs.com/package/cloc

Cloc var izmantot, lai saskaitītu rindas konkrētā failā vai vairākos failos direktorijā. Lai izmantotu cloc, vienkārši ierakstiet cloc, kam seko fails vai direktorijs, kuru vēlaties pārbaudīt.

Šeit ir piemērs no faila bash. Attiecīgajā failā bash valodā ir šāds kods:

$ cat bash_script.sh

Tagad ļauj tam palaist cloc.

$ cloc bash_script.sh

Kā redzat, tas saskaitīja failu, tukšo rindiņu, komentāru un koda rindu skaitu.

Vēl viena forša cloc iezīme ir tā, ka to var izmantot pat saspiestos failos. Piemēram, es esmu lejupielādējis jaunāko WordPress arhīvu un palaidis to.

$ cloc latest.tar.gz

Lūk, rezultāts:

Var redzēt, ka tas atpazīst dažādus koda veidus un atdala statistiku katrā valodā.

Ja jums ir jāsaņem atskaite par vairākiem failiem direktorijā, varat izmantot opciju “- by-file” , kas uzskaitīs katra faila rindas un sniegs tām pārskatu. Tas var aizņemt kādu laiku projektiem, kuros ir daudz failu un tūkstošiem koda rindiņu.

Sintakse ir šāda:

$ cloc --by-file <directory>

Kaut arī kloka palīdzība ir viegli lasāma un saprotama, es iekļaušu dažas papildu opcijas, kuras var izmantot kopā ar cloc, daži lietotāji var atrast noderīgu.

  • --diff - aprēķina koda atšķirības starp kopas1 un kopas2 avota failiem. Ievade var būt dažādu failu un direktoriju kombinācija.
  • --git - piespiež ievadus atzīt par git mērķiem, ja tie paši vispirms netiek identificēti kā failu vai direktoriju nosaukumi.
  • --ignore-whitespace - ignorē horizontālo atstarpi, salīdzinot failus ar --diff .
  • --max-file-size= - ja vēlaties izlaist failus, kas pārsniedz norādīto MB apjomu.
  • --exclude-dir=, - izslēgt dotos komatiem atdalītos direktorijus.
  • --exclude-ext=, - izslēgt norādītos failu paplašinājumus.
  • --csv - eksportē rezultātus CSV faila formātā.
  • --csv-delimiter= - kā atdalītāju izmantojiet rakstzīmi .
  • --out= - saglabājiet rezultātus mapē <file>.
  • --quiet - nomāc visus informatīvos ziņojumus un parāda tikai galīgo ziņojumu.
  • --sql= - ierakstiet rezultātus kā izveidot un ievietojiet paziņojumus, kurus var nolasīt datu bāzes programma, piemēram, SQLite.

Cloc ir nedaudz noderīga lietderība, kas noteikti ir laba jūsu arsenālā. Lai gan to, iespējams, nelieto katru dienu, tas var jums palīdzēt, kad jums ir jāveido kāds pārskats vai ja jūs vienkārši interesējaties, kā notiek jūsu projekts.