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 en double consécutives d'un fichier, en ne faisant apparaître que les lignes uniques.

Nous avons duplicates.txt :

apple
banana
apple
cherry
banana
banana

Important : uniq supprime uniquement les doublons qui sont côte à côte. C'est pourquoi il est presque toujours utilisé avec sort au préalable :

sort duplicates.txt | uniq

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

Options utiles :

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

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

-d — afficher uniquement les lignes qui sont doublonnées :

sort duplicates.txt | uniq -d

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

sort duplicates.txt | uniq -u
challenge icon

Défi

Débutant

Utilisez sort et uniq ensemble pour afficher uniquement les lignes uniques de duplicates.txt sans aucun doublon.

Astuce : Vous devez d'abord trier le fichier avec sort pour que les doublons soient regroupés, puis rediriger | le résultat vers uniq pour les supprimer.

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