clock - Tell kodelinjer på mange programmeringsspråk


Mens du jobber med forskjellige prosjekter, kan du noen ganger bli bedt om å gi en rapport eller statistikk over fremgangen din, eller bare beregne verdien av koden din.

Det er dette enkle, men kraftige verktøyet kalt «cloc – telle linjer med kode» som lar deg telle hele koden din og ekskludere kommentarer og tomme linjer samtidig.

Den er tilgjengelig i alle større Linux-distribusjoner og støtter flere programmeringsspråk og filutvidelser og har ingen spesifikke krav som skal brukes.

I denne opplæringen skal du lære hvordan du installerer og bruker cloc på Linux-systemet ditt.

Hvordan installere og bruke Cloc i Linux-systemer

Det er enkelt og enkelt å installere klokke. Nedenfor kan du se hvordan du installerer cloc i forskjellige operativsystemer med deres relaterte pakkeadministratorer:

$ 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 kan brukes til å telle linjer i en bestemt fil eller i flere filer i katalogen. For å bruke cloc, skriv ganske enkelt cloc etterfulgt av filen eller katalogen du ønsker å undersøke.

Her er et eksempel fra en fil i bash. Den aktuelle filen inneholder følgende kode i bash:

$ cat bash_script.sh

La oss nå kjøre klokken på den.

$ cloc bash_script.sh

Som du kan se, telte den antall filer, tomme linjer, kommentarer og kodelinjer.

En annen kul funksjon med cloc er at den til og med kan brukes på komprimerte filer. Jeg har for eksempel lastet ned det nyeste WordPress-arkivet og kjørt cloc på det.

$ cloc latest.tar.gz

Her er resultatet:

Du kan se at den gjenkjenner de forskjellige kodetypene og skiller statistikken per språk.

I tilfelle du trenger å få en rapport for flere filer i en katalog, kan du bruke \--by-file-alternativet, som vil telle linjene i hver fil og gi en rapport for dem. kan ta en stund for prosjekter med mange filer og tusenvis av linjer med kode.

Syntaksen er som følger:

$ cloc --by-file <directory>

Mens hjelpen til cloc er lett lesbar og forståelig, vil jeg inkludere noen av de ekstra alternativene som kan brukes med cloc som noen brukere kan finne nyttige.

  • --diff – beregner forskjellene i kode mellom kildefilene til sett1 og sett2. Inndataene kan være en blanding av filer og kataloger.
  • --git – tvinger inngangene til å bli gjenkjent som git-mål hvis de ikke først identifiseres som fil- eller katalognavn.
  • --ignore-whitespace – ignorerer det horisontale mellomrommet når man sammenligner filer med --diff.
  • --max-file-size= – hvis du vil hoppe over filer som er større enn det angitte antallet MB.
  • --exclude-dir=, – ekskluder gitte kommaseparerte kataloger.
  • --exclude-ext=, – ekskluder de gitte filtypene.
  • --csv – eksporter resultater til CSV-filformat.
  • --csv-delimiter= – bruk tegnet som skilletegnet.
  • --out= – lagre resultatene til <file>.
  • --stille – undertrykk alle informasjonsmeldinger og vis kun den endelige rapporten.
  • --sql= – skriv resultatene som create og sett inn setninger som kan leses av et databaseprogram som SQLite.

Cloc er et lite nyttig verktøy som definitivt er greit å ha i arsenalet ditt. Selv om det kanskje ikke brukes på daglig basis, kan det hjelpe deg når du må generere en rapport eller hvis du bare er nysgjerrig på hvordan det går med prosjektet ditt.