cloc - Conta righe di codice in molti linguaggi di programmazione
Mentre lavori su progetti diversi, a volte ti potrebbe essere richiesto di fornire un rapporto o statistiche sui tuoi progressi, o semplicemente di calcolare il valore del tuo codice.
Esiste questo strumento semplice ma potente chiamato "cloc – conta righe di codice" che ti consente di contare tutto il numero del tuo codice ed escludere commenti e righe vuote allo stesso tempo.
È disponibile in tutte le principali distribuzioni Linux e supporta più linguaggi di programmazione ed estensioni di file e non presenta requisiti specifici per essere utilizzato.
In questo tutorial imparerai come installare e utilizzare cloc sul tuo sistema Linux.
Come installare e utilizzare Cloc nei sistemi Linux
Installare cloc è facile e semplice. Di seguito puoi vedere come installare cloc nei diversi sistemi operativi con i relativi gestori di pacchetti:
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 può essere utilizzato per contare le righe in un particolare file o in più file all'interno della directory. Per utilizzare cloc digita semplicemente cloc seguito dal file o dalla directory che desideri esaminare.
Ecco un esempio da un file in bash. Il file in questione contiene il seguente codice in bash:
cat bash_script.sh
Ora eseguiamo cloc su di esso.
cloc bash_script.sh
Come puoi vedere, ha contato il numero di file, righe vuote, commenti e righe di codice.
Un'altra caratteristica interessante di cloc è che può essere utilizzato anche su file compressi. Ad esempio, ho scaricato l'ultimo archivio WordPress e ci ho eseguito cloc.
cloc latest.tar.gz
Ecco il risultato:
Puoi vedere che riconosce i diversi tipi di codice e separa le statistiche per lingua.
Nel caso in cui sia necessario ottenere un report per più file in una directory, è possibile utilizzare l'opzione “--by-file ”
, che conterà le righe in ciascun file e fornirà un report per esse. Questa operazione potrebbe richiedere del tempo per progetti con molti file e migliaia di righe di codice.
La sintassi è la seguente:
cloc --by-file <directory>
Sebbene l'aiuto di cloc sia facilmente leggibile e comprensibile, includerò alcune delle opzioni extra che possono essere utilizzate con cloc che alcuni utenti potrebbero trovare utili.
--diff
– calcola le differenze nel codice tra i file sorgente di set1 e set2. L'input può essere un mix di file e directory.--git
– forza il riconoscimento degli input come destinazioni git se gli stessi non vengono prima identificati come nomi di file o directory.--ignore-whitespace
– ignora lo spazio bianco orizzontale quando si confrontano file con--diff
.--max-file-size=
– se desideri saltare i file più grandi della quantità di MB specificata.--exclude-dir=
– esclude determinate directory separate da virgole., --exclude-ext=
– esclude le estensioni di file specificate., --csv
: esporta i risultati nel formato file CSV.--csv-delimiter=
– utilizza il carattere
come delimitatore.--out=
– salva i risultati in<file>
.--quiet
– sopprime tutti i messaggi informativi e mostra solo il rapporto finale.--sql=
– scrive i risultati come istruzioni di creazione e inserimento che possono essere lette da un programma di database come SQLite.
Conclusione
Cloc è una piccola utilità utile che è sicuramente utile avere nel tuo arsenale. Anche se potrebbe non essere utilizzato quotidianamente, può aiutarti quando devi generare qualche report o se sei semplicemente curioso di sapere come sta andando il tuo progetto.