Menu Fermer

La commande wc : utilisation et exemples

La commande wc de Linux vous permet de compter le nombre de lignes, de mots, de caractères et d’octets de chaque fichier donné ou d’entrée standard et d’imprimer le résultat.

Dans ce tutoriel, nous vous montrerons comment utiliser la commande WC par des exemples simples et pratiques.

La commande wc : utilisation et exemples

Comment utiliser la commande WC

La syntaxe de la commande wc est :

wc OPTION... [FICHIER]...

WC accepte un ou plusieurs noms de fichiers mais peut aussi lire la sortie de la console.
Ainsi on peut l’imbriquer avec d’autres commandes avec un pipe.

Dans sa forme la plus simple lorsqu’elle est utilisée sans options, la commande WC imprimera quatre colonnes :

  • le nombre de lignes
  • de mots
  • les nombres d’octets
  • et le nom du fichier pour chaque fichier passèrent sous forme d’argument

Lorsque vous utilisez l’entrée standard, la quatrième colonne (nom de fichier) n’est pas affichée. Par exemple, la commande suivante affichera des informations sur le fichier virtuel.

Par exemple, l’utilisation de wc sur le fichier rose-tatoo.txt

wc rose-tatoo.txt
15 109 503 rose-tatoo.txt

Soit donc :

  • 15 est le nombre de lignes
  • 109 est le nombre de mots
  • 503 est le nombre de caractères

Son utilisation sur deux fichiers : rose-tatoo.txt et Ubuntu.txt :

wc rose-tatoo.txt Ubuntu.txt
 15 109 503 rose-tatoo.txt
  3  41 266 Ubuntu.txt
 18 150 769 total
OptionsDescription
-l, –linesImprimez le nombre de lignes
-w, –wordsImprimez le nombre de mots
-m, –charsImprimez le nombre de caractères
-c, –bytesImprimez le nombre d’octets
-L, –Max-Line-LongueurImprimez la longueur de la ligne la plus longue
Les options de la commande wc

On peut bien entendu utiliser plusieurs options.
Par exemple pour compter le nombre de lignes (option -l) et de mots (option -w) :

wc -lL rose-tatoo.txt
  15  58 rose-tatoo.txt

Pour retirer le nom du fichier, utilisez la commande cut :

wc -l rose-tatoo.txt | cut -d ' ' -f 1

Exemples d’utilisation de la commande wc

Compter le nombre de lignes

La commande WC est principalement utilisée avec l’option -L pour ne compter que le nombre de lignes dans un fichier texte.

Par exemple, pour compter le nombre de lignes dans le fichier /etc/passwd, vous devez taper:

wc -l /etc/passwd
33 /etc/passwd

Pour ne pas compter les lignes avec des commentaires dans un fichier de configuration, utilisez la commande grep.
Pour cela, on demande à retirer (option -v), les lignes commençant par un # (^#) ou vide (^$) :

grep -v -E "(^#|^$)" /etc/ntp.conf |wc -l

Compter le nombre de mots

Pour compter le nombre de mots dans un fichier, on utilise l’option -w :

wc -w /etc/passwd
47 /etc/passwd

Compter les fichiers dans le répertoire actuel

Pour compter le nombre de fichiers dans un répertoire, on peut utiliser ls avec wc comme ceci :

debian@linux:/etc$ ls | wc -l
170

Toutefois le comptage n’est pas récursif.

La commande find passe une liste de tous les fichiers du répertoire actuel avec chaque nom de fichier sur une seule ligne à la commande WC, qui compte le nombre de lignes et imprime le résultat:

debian@linux:/etc$ sudo find . -type f | wc -l
693

Compter le nombre d’utilisateurs Linux

Pour compter le nombre d’utilisateurs Linux, il suffit de compter le nombre de lignes dans le fichier /etc/passwd
Pour cela, on peut utiliser la commande getent.

Par exemple comme ceci :

getent passwd | wc -l
33