cloc - Pag-ihap sa mga Linya sa Code sa Daghang Pinulongan sa Programming


Samtang nagtrabaho sa lainlaing mga proyekto, usahay kinahanglan nimo nga maghatag usa ka taho o estadistika sa imong pag-uswag, o yano nga kalkulado ang kantidad sa imong code.

Adunay kining yano apan gamhanan nga himan nga gitawag og \cloc - count lines of code nga nagtugot kanimo sa pag-ihap sa tanan nga gidaghanon sa imong code ug dili iapil ang mga komentaryo ug blangko nga mga linya sa samang higayon.

Anaa kini sa tanan nga dagkong mga distribusyon sa Linux ug nagsuporta sa daghang mga lengguwahe sa programming ug mga extension sa file ug wala’y piho nga mga kinahanglanon nga magamit.

Sa kini nga panudlo mahibal-an nimo kung giunsa ang pag-install ug paggamit sa cloc sa imong sistema sa Linux.

Giunsa ang Pag-install ug Paggamit sa Cloc sa Linux Systems

Ang pag-instalar sa cloc sayon ug yano. Sa ubos makita nimo kung giunsa ang pag-install sa cloc sa lainlaing mga operating system sa ilang mga may kalabutan nga managers sa package:

$ 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

Ang Cloc mahimong magamit sa pag-ihap sa mga linya sa partikular nga file o sa daghang mga file sulod sa direktoryo. Aron magamit ang cloc i-type lang ang cloc nga gisundan sa file o direktoryo nga gusto nimong susihon.

Ania ang usa ka pananglitan gikan sa usa ka file sa bash. Ang file nga gipangutana naglangkob sa mosunod nga code sa bash:

$ cat bash_script.sh

Karon lets run cloc on it.

$ cloc bash_script.sh

Sama sa imong makita nga giihap ang gidaghanon sa mga file, blangko nga linya, komento ug linya sa code.

Ang laing cool nga bahin sa cloc mao nga mahimo pa gani gamiton sa mga compressed file. Pananglitan, akong na-download ang pinakabag-o nga WordPress archive ug gipadagan ang cloc niini.

$ cloc latest.tar.gz

Ania ang resulta:

Imong makita nga kini nakaila sa lain-laing mga matang sa code ug nagbulag sa mga stats matag pinulongan.

Kung kinahanglan nimo nga makakuha usa ka taho alang sa daghang mga file sa usa ka direktoryo mahimo nimong gamiton ang \--by-file nga kapilian, nga mag-ihap sa mga linya sa matag file ug maghatag usa ka taho alang kanila. mahimong magdugay alang sa mga proyekto nga adunay daghang mga file ug liboan nga linya sa code.

Ang syntax mao ang mosunod:

$ cloc --by-file <directory>

Samtang ang tabang sa cloc dali nga mabasa ug masabtan, akong ilakip ang pipila sa mga dugang nga kapilian nga magamit sa cloc nga mahimong makit-an sa pipila nga mga tiggamit nga mapuslanon.

  • --diff – nag-compute sa mga kalainan sa code tali sa source files sa set1 ug set2. Ang input mahimong kombinasyon sa mga file ug mga direktoryo.
  • --git – nagpugos sa mga input nga ilhon isip git targets kung ang pareho dili una mailhan isip file o directory names.
  • --ignore-whitespace – ibaliwala ang pinahigda nga whitespace kon itandi ang mga file sa --diff.
  • --max-file-size= – kung gusto nimong laktawan ang mga file nga mas dako pa sa gihatag nga kantidad nga MB.
  • --exclude-dir=, – dili iapil ang gihatag nga comma separated directory.
  • --exclude-ext=, – dili iapil ang gihatag nga file extensions.
  • --csv – export resulta ngadto sa CSV file format.
  • --csv-delimiter= – gamita ang karakter nga isip delimiter.
  • --out= – i-save ang resulta sa <file>.
  • --hilom – pugngi ang tanang mensahe sa impormasyon ug ipakita lang ang kataposang taho.
  • --sql= – isulat ang mga resulta isip paghimo ug pagsal-ot og mga pahayag nga mabasa sa database program sama sa SQLite.

Ang Cloc usa ka gamay nga mapuslanon nga gamit nga siguradong maayo nga naa sa imong arsenal. Bisan kung dili kini magamit sa adlaw-adlaw, makatabang kini kanimo kung kinahanglan ka nga maghimo usa ka taho o kung gusto ka lang kung giunsa ang imong proyekto.