cloc - Brojite linije koda u mnogim programskim jezicima


Dok radite na različitim projektima, ponekad ćete možda morati dati izvješće ili statistiku svog napretka ili jednostavno izračunati vrijednost vašeg koda.

Postoji ovaj jednostavan, ali moćan alat pod nazivom “cloc – brojanje redaka koda” koji vam omogućuje da izbrojite cijeli broj koda i isključite komentare i prazne retke u isto vrijeme.

Dostupan je u svim većim distribucijama Linuxa i podržava više programskih jezika i datotečnih ekstenzija te nema nikakve posebne zahtjeve za korištenje.

U ovom vodiču ćete naučiti kako instalirati i koristiti cloc na vašem Linux sustavu.

Kako instalirati i koristiti Cloc u Linux sustavima

Instaliranje cloc-a je lako i jednostavno. U nastavku možete vidjeti kako instalirati cloc u različitim operativnim sustavima s njihovim povezanim upraviteljima paketa:

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 se može koristiti za brojanje redaka u određenoj datoteci ili u više datoteka unutar direktorija. Za korištenje cloc jednostavno upišite cloc nakon čega slijedi datoteka ili direktorij koji želite ispitati.

Evo primjera iz datoteke u bashu. Dotična datoteka sadrži sljedeći kod u bashu:

cat bash_script.sh

Sada pokrenimo cloc na njemu.

cloc bash_script.sh

Kao što možete vidjeti, brojio je broj datoteka, praznih redaka, komentara i redaka koda.

Još jedna zgodna značajka cloc-a je da se može koristiti čak i na komprimiranim datotekama. Na primjer, preuzeo sam najnoviju WordPress arhivu i pokrenuo cloc na njoj.

cloc latest.tar.gz

Evo rezultata:

Možete vidjeti da prepoznaje različite vrste koda i odvaja statistiku po jeziku.

U slučaju da trebate dobiti izvješće za više datoteka u direktoriju, možete koristiti opciju “--by-file”, koja će prebrojati retke u svakoj datoteci i dati izvješće za njih. Ovo može potrajati neko vrijeme za projekte s mnogo datoteka i tisućama redaka koda.

Sintaksa je sljedeća:

cloc --by-file <directory>

Dok je pomoć za cloc lako čitljiva i razumljiva, uključit ću neke od dodatnih opcija koje se mogu koristiti s cloc nekim korisnicima.

  • --diff – izračunava razlike u kodu između izvornih datoteka set1 i set2. Unos može biti mješavina datoteka i direktorija.
  • --git – prisiljava ulaze da budu prepoznati kao git ciljevi ako isti prvo nisu identificirani kao nazivi datoteka ili direktorija.
  • --ignore-whitespace – zanemaruje vodoravni razmak kada se uspoređuju datoteke s --diff.
  • --max-file-size= – ako želite preskočiti datoteke veće od zadane količine MB.
  • --exclude-dir=, – isključi zadane direktorije odvojene zarezima.
  • --exclude-ext=, – isključi zadane ekstenzije datoteka.
  • --csv – izvoz rezultata u CSV format datoteke.
  • --csv-delimiter= – koristite znak kao razdjelnik.
  • --out= – spremite rezultate u <file>.
  • --quiet – potisnuti sve informativne poruke i prikazati samo konačno izvješće.
  • --sql= – zapišite rezultate kao naredbe za kreiranje i umetanje koje može čitati program baze podataka kao što je SQLite.
Zaključak

Cloc je mali korisni uslužni program koji je svakako dobro imati u svom arsenalu. Iako se možda neće koristiti svakodnevno, može vam pomoći kada morate generirati neko izvješće ili ako ste samo znatiželjni kako ide vaš projekt.