wc

La commande wc permet de compter le d'octet, de mots et de lignes d'un fichier. Le nom wc est l'acronyme de "Word Count" signifiant "nombre de mots".

Utilisation

La commande wc peut être utilisé sur un fichier ou sur l'entrée standard (ce qui permet de la chaîner avec d'autres commandes). Lorsqu'elle est invoquée sans option, elle affiche trois colonne donnant le nombre de ligne, le nombre de mot et le nombre d'octets.

Voici par exemple l'utilisation de wc sur le fichier de configuration de ce site:

$ wc settings.py
      91     354    3204 settings.py

Restreindre l'affichage

Il existe des options pour restreindre l'affichage à un seul type d'information parmi les trois affichées par défaut. L'option -l (ou --lines) affiche le nombre de ligne. L'option -w (ou --words) affiche le nombre de mot. Finalement, l'option -c (ou --bytes affiche le nombre d'octets.

L'option -l est certainement la plus utilisée des trois. Voici par exemple comment compter le nombre de ligne de code de ce site:

find . -name "*.py" -exec cat {} \; | grep -vE '^[:space:]*$' | wc -l
    9281

Cet exemple utilise find pour trouver tout les fichiers de code Python du site et les afficher. Ensuite grep est utilisé pour supprimer les lignes vide. Et finalement, wc est utilisé pour compter le nombre de ligne.

Page de manuel

La page de manuel de wc décrit la commande et ses options.

La documentation fait la différence entre les octets et caractères. Cette différence existe pour certains type d'encodage tel que UTF-16, pour lequel chaque caractère est codé sur deux octets.