Maison > Opération et maintenance > exploitation et maintenance Linux > Comment utiliser la commande Linux Uniq

Comment utiliser la commande Linux Uniq

WBOY
Libérer: 2023-05-16 19:05:10
avant
1675 Les gens l'ont consulté

La commande Linux uniq est utilisée pour vérifier et supprimer les lignes et colonnes répétées dans les fichiers texte. Elle est généralement utilisée en conjonction avec la commande de tri.

uniq peut vérifier les lignes et colonnes répétées dans les fichiers texte.

Syntaxe :

uniq [-cdu][-f<栏位>][-s<字符位置>][-w<字符位置>][--help][--version][输入文件][输出文件]
Copier après la connexion

Paramètres :

-c ou --count Affiche le nombre de fois que la ligne est répétée à côté de chaque colonne.

-d ou --repeated affiche uniquement les colonnes répétées.

-f ou --skip-fields= ignore les champs spécifiés dans la comparaison.

-s ou --skip-chars= ignore les caractères spécifiés de la comparaison.

-u ou --unique affiche les lignes et les colonnes une seule fois.

-w ou --check-chars= spécifie les caractères à comparer.

--help Afficher l'aide.

--version affiche les informations de version.

[Fichier d'entrée] Spécifiez le fichier texte trié. Si cela n'est pas spécifié, les données sont lues à partir du standard ;

[output file] spécifie le fichier de sortie. Si cette option n'est pas spécifiée, le contenu est affiché sur le périphérique de sortie standard (terminal d'affichage).

Exemple :

Les 2ème, 3ème, 5ème, 6ème, 7ème et 9ème lignes du fichier test sont les mêmes. Utilisez la commande uniq pour supprimer les lignes en double. Vous pouvez utiliser la commande suivante :

uniq
Copier après la connexion
Copier après la connexion

Original. contenu dans le fichier test Pour :

$ cat testfile      #原有内容  
test 30  
test 30  
test 30  
Hello 95  
Hello 95  
Hello 95  
Hello 95  
Linux 85  
Linux 85
Copier après la connexion

Après avoir utilisé la commande uniq pour supprimer les lignes en double, le résultat suivant apparaît :

$ uniq testfile     #删除重复行后的内容  
test 30  
Hello 95  
Linux 85
Copier après la connexion

Vérifiez le fichier et supprimez les lignes répétées dans le fichier, et affichez le nombre de lignes répétées au début de la ligne. Utilisez la commande suivante :

uniq
Copier après la connexion
Copier après la connexion

Le résultat est le suivant :

$ uniq -c testfile      #删除重复行后的内容  
3 test 30             #前面的数字的意义为该行共出现了3次  
4 Hello 95            #前面的数字的意义为该行共出现了4次  
2 Linux 85
Copier après la connexion

Lorsque les lignes répétées ne sont pas adjacentes, la commande uniq ne fonctionne pas. Autrement dit, si le contenu du fichier est le suivant, la commande uniq ne fonctionne pas :

$ cat testfile1      # 原有内容 
test 30  
Hello 95  
Linux 85 
test 30  
Hello 95  
Linux 85 
test 30  
Hello 95  
Linux 85
Copier après la connexion

Ceci, nous pouvons utiliser le tri :

$ sort  testfile1 | uniq
Hello 95  
Linux 85 
test 30
Copier après la connexion

pour compter le nombre de fois où chaque ligne apparaît dans le fichier :

$ sort testfile1 | uniq -c
   3 Hello 95  
   3 Linux 85 
   3 test 30
Copier après la connexion

pour rechercher les lignes en double dans le fichier :

$ sort testfile1 | uniq -d
Hello 95  
Linux 85 
test 30
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal