Menu
Coddy logo textTech

Commande Uniq

Fait partie de la section Les fondamentaux du Journey Terminal de Coddy — leçon 33 sur 82.

La commande uniq filtre les lignes dupliquées consécutives d’un fichier, en n’affichant que les lignes uniques.

Nous avons duplicates.txt :

apple
banana
apple
cherry
banana
banana

Important : uniq ne supprime les doublons que s'ils sont adjacents. C'est pourquoi il est presque toujours utilisé en combinaison avec sort au préalable :

sort duplicates.txt | uniq

Le symbole | s'appelle un pipe — il envoie la sortie d'une commande comme entrée à une autre. C'est un motif puissant que vous utiliserez souvent dans le terminal.

Options utiles :

-c — préfixe chaque ligne avec le nombre de fois qu'elle apparaît :

sort duplicates.txt | uniq -c
      2 apple
      3 banana
      1 cherry

-d — n'affiche que les lignes qui sont dupliquées :

sort duplicates.txt | uniq -d

-u — afficher uniquement les lignes qui apparaissent exactement une fois :

sort duplicates.txt | uniq -u
challenge icon

Défi

Débutant

Utilisez sort et uniq ensemble pour afficher uniquement les lignes uniques du fichier duplicates.txt sans doublons.

Indice : Vous devez sort le fichier en premier afin que les doublons soient regroupés ensemble, puis canaliser | le résultat vers uniq pour les supprimer.

Aide-mémoire

La commande uniq filtre les lignes dupliquées consécutives d'un fichier. Elle ne supprime les doublons que s'ils sont adjacents, donc elle est généralement utilisée avec sort au préalable :

sort duplicates.txt | uniq

Le symbole | est un pipe — il transmet la sortie d'une commande comme entrée à une autre.

Options utiles :

-c — préfixe chaque ligne avec le nombre d'occurrences :

sort duplicates.txt | uniq -c

-d — n'affiche que les lignes dupliquées :

sort duplicates.txt | uniq -d

-u — n'affiche que les lignes qui n'apparaissent qu'une seule fois :

sort duplicates.txt | uniq -u

Essayez vous-même

Terminal
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Les fondamentaux