Compter le nombre de lignes d’un projet

Des commandes toutes simples, mais très utiles pour celui qui désire savoir combien de lignes de code comporte un projet.

Exemple pour un projet PHP :

cat `find . -name "*.php"` | wc -l

ou

find . -name "*.php" -exec cat {} \;|wc -l

Exemple avec le nombre de lignes par fichier ainsi que le total (merci à louiz’ et tOkeshu )

find . -name "*.php" | xargs wc -l

ou

wc -l $(find -name "*.php")

Il suffit de remplacer php par l’extension désirée.

    • Paul
    • 24 février 2010 11:10

    un petit coup de grep et de sed pour supprimer les commentaires serait plus précis :)

  1. Pourquoi tu mets cat ? pourquoi pas simplement
    find . -name '*.php' -exec cat {} \;|wc -l
    ?

    Tu es sur d’avoir toutes les lignes du projet ? ta commande devrait renvoyer les lignes du premier match, ça sera pas récursif.

  2. Et pourquoi pas xargs, c’est rigolo aussi

    find . -name "*.php" | xargs wc -l

    avec cette méthode on obtient le nombre de ligne dans chaque fichier, puis le total, c’est plus cool :o

    • Liberez le tux
    • 24 février 2010 1:47

    @macsim : Les 2 commandes font exactement la même chose et avec les mêmes outils, l’écriture est simplement différente. Le find est récursif par défaut.

    @louiz’ : ta solution est vraiment plus sympa !!! je vais l’ajouter de ce pas

  3. Il y a une application dédiée pour ça : sloccount :)
    http://www.dwheeler.com/sloccount/

    Sinon moi j’aurais fait comme ça :-°…

    wc -l $(find -name "*.py")

  4. @tOkeshu : ça à l’air génial « sloccount », je pense que ça mériterai un billet dédié !

  1. Aucun trackback pour l'instant