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 | uniqLe 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 -uDéfi
DébutantUtilisez sort et uniq ensemble pour afficher uniquement les lignes uniques du fichier duplicates.txt sans doublons.
Indice : Vous devez
sortle fichier en premier afin que les doublons soient regroupés ensemble, puis canaliser|le résultat versuniqpour 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 | uniqLe 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 -uEssayez vous-même
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
4Répertoires
Créer Un RépertoireCopier Un RépertoireDéplacer Et Renommer Un RépertoireSupprimer Un RépertoireRécapitulatif - Opérations Sur Les Répertoires7Contenu de fichier
Head et TailComptage de motsCommande SortCommande UniqBases de GrepGrep avec optionsRécap - Détective de texte10Projet Analyseur de Journaux
Aperçu du ProjetAffichage du Fichier Journal2Navigation
Afficher le répertoire de travailLister les fichiersChanger de répertoireChemins absolus vs relatifsRépertoire personnel et racineRécap - Trouver son chemin5Projet Organiser les Photos
Aperçu du ProjetCréation de la Structure8Redirection
Sortie standardÉcraser vers un fichierAjouter à un fichierEntrée standardErreur standardRécapitulatif - Constructeur de logs11Permissions
Comprendre les permissionsLire les permissionsChmod avec des nombresChmod avec des symbolesPropriété des fichiersRécapitulatif - Verrouillez tout14Projet de Script de Sauvegarde
Aperçu du ProjetObtenir le Chemin Source3Fichiers
Créer Un FichierLire Un FichierCopier Un FichierDéplacer Et Renommer Un FichierSupprimer Un FichierRécapitulatif - Opérations Sur Les Fichiers6Caractères jokers et motifs
Le joker étoileLe joker point d'interrogationJokers entre crochetsCombiner les jokersRécapitulatif - Opérations sélectives9Les pipes
Qu'est-ce qu'une pipe ?Chaîner deux commandesChaîner plusieurs commandesPipe avec GrepRécapitulatif - Pipeline de données