Recherche de site Web

Compter les lignes de code avec cloc


Il peut être difficile de compter le nombre de lignes de code qui composent un certain programme, car le simple fait de visualiser le code source inclura des commentaires, des espaces, etc. Sur les systèmes Linux, la commande cloc peut être utilisée pour compter les lignes de code dans un ou plusieurs fichiers, et même trier les résultats par langage de programmation.

Le programme cloc est particulièrement utile si vous avez besoin de mesurer et de soumettre votre progression d’un projet de codage, d’afficher des statistiques de codage ou de calculer la valeur totale de votre code.

Dans ce tutoriel, vous allez voir comment installer le progiciel cloc sur toutes les principales distributions Linux, puis utiliser la commande cloc pour compter les lignes de code de divers fichiers programme.

Dans ce tutoriel, vous allez apprendre :

  • Comment installer cloc sur les principales distributions Linux
  • Comment utiliser la commande cloc pour compter les lignes de code sous Linux

Installer cloc sur les principales distributions Linux

cloc peut être installé à partir du gestionnaire de paquets de votre système. Utilisez la commande appropriée ci-dessous pour l’installer.

Pour installer cloc sur Ubuntu, Debian et Linux Mint :

sudo apt install cloc

Pour installer cloc sur Fedora, CentOS, AlmaLinux et Red Hat :

sudo dnf install cloc

Pour installer cloc sur Arch Linux et Manjaro :

sudo pacman -S cloc

Une fois installé, vous pourrez exécuter les commandes des exemples ci-dessous.

Comment utiliser cloc sous Linux

Vous pouvez utiliser la commande cloc pour compter les lignes de code d’un fichier individuel, de plusieurs fichiers, d’un répertoire ou même d’une archive compressée telle qu’un .tar.gz et .zip fichiers.

  1. Compter les lignes d’un fichier Bash :

    cloc countdown.sh 
           1 text file.
           1 unique file.                              
           0 files ignored.
    
    github.com/AlDanial/cloc v 1.82  T=0.03 s (34.3 files/s, 2781.5 lines/s)
    -------------------------------------------------------------------------------
    Language                     files          blank        comment           code
    -------------------------------------------------------------------------------
    Bourne Shell                     1             12              0             69
    -------------------------------------------------------------------------------
    
  2. Compter les lignes de plusieurs fichiers PHP à la fois :

    cloc *.php
         209 text files.
         209 unique files.                                          
           0 files ignored.
    
    github.com/AlDanial/cloc v 1.82  T=2.93 s (71.4 files/s, 67066.1 lines/s)
    -------------------------------------------------------------------------------
    Language                     files          blank        comment           code
    -------------------------------------------------------------------------------
    PHP                            209          22423          80758          93103
    -------------------------------------------------------------------------------
    SUM:                           209          22423          80758          93103
    -------------------------------------------------------------------------------
    
  3. Dans l’exemple suivant, nous allons imprimer les résultats pour chaque fichier séparé sur chaque ligne. Cela peut être fait en utilisant l’option --by-file :

    cloc --by-file my_project/
           2 text files.
           2 unique files.                              
           0 files ignored.
    
    http://cloc.sourceforge.net v 1.82  T=0.01 s (149.5 files/s, 448.6 lines/s)
    --------------------------------------------------------------------------------
    File                              blank        comment           code
    --------------------------------------------------------------------------------
    my_project/perl.pl                    1              0              2
    my_project/bash.sh                    1              0              2
    --------------------------------------------------------------------------------
    SUM:                                  2              0              4
    --------------------------------------------------------------------------------
    
  4. Nous pouvons même faire des choses sympas comme compter le nombre de lignes de code dans le noyau en cours d’exécution de notre distribution Linux.

    cloc /usr/src/linux-headers-`uname -r`
         347 text files.
         346 unique files.                                          
        8625 files ignored.
    
    github.com/AlDanial/cloc v 1.82  T=4.70 s (54.3 files/s, 20714.3 lines/s)
    --------------------------------------------------------------------------------
    Language                      files          blank        comment           code
    --------------------------------------------------------------------------------
    C                                43           4888           3948          30263
    Perl                             29           3323           2819          16355
    C/C++ Header                     55            425            463          13876
    DOS Batch                        33             63              0           3050
    Bourne Shell                     50            557            913           2603
    make                             17            641            569           2160
    C++                               1            268             66           1581
    Python                            7            285            411           1121
    yacc                              2            170             52           1015
    Bourne Again Shell                7            182            198            892
    lex                               2            131             66            767
    Glade                             1             58              0            603
    NAnt script                       1            107              0            442
    Assembly                          4            282           1107            360
    D                                 2              0              0             99
    awk                               1              9              5             67
    --------------------------------------------------------------------------------
    SUM:                            255          11389          10617          75254
    --------------------------------------------------------------------------------
    
  5. Et voici un autre exemple où nous comptons les lignes de code dans l’ensemble d’une installation WordPress, qui est toutes compressées dans un fichier .tar.gz. Selon cloc, il y a pas moins de 778 239 lignes de code, et il n’a toujours eu aucun problème à les compter toutes.

    cloc latest.tar.gz 
        2421 text files.
        2353 unique files.                                          
          86 files ignored.
    
    github.com/AlDanial/cloc v 1.82  T=29.91 s (78.1 files/s, 40656.4 lines/s)
    -------------------------------------------------------------------------------
    Language                     files          blank        comment           code
    -------------------------------------------------------------------------------
    JavaScript                     543          74183         101931         320805
    PHP                            992          54140         158885         261259
    CSS                            554          25906          19563         155284
    JSON                            73              0              0          28413
    Sass                           155           2790            462          12011
    SVG                             15              0              0            344
    HTML                             1             13              0             84
    XML                              1              6              0             37
    Markdown                         1              1              0              2
    -------------------------------------------------------------------------------
    SUM:                          2335         157039         280841         778239
    -------------------------------------------------------------------------------
    

CLOC propose quelques options supplémentaires, qui peuvent s’avérer utiles dans des scénarios de niche. Pour les voir tous, consultez la page de manuel.

man cloc

Réflexions finales

Dans ce tutoriel, nous avons vu comment installer cloc sur les principales distributions Linux, et utiliser la commande pour compter le nombre de lignes de code dans un ou plusieurs fichiers sous Linux. CLOC est un programme simple et rapide, capable de traiter des millions de lignes de code en quelques secondes seulement. Il fonctionne sur des tonnes de langages de programmation différents, ce qui le rend utile pour presque tous les types de développeurs.

Articles connexes: