Cela imprimera uniquement les lignes en double , avec les nombres:
sort FILE | uniq -cd
ou, avec les options longues GNU (sous Linux):
sort FILE | uniq --count --repeated
sur BSD et OSX, vous devez utiliser grep pour filtrer les lignes uniques:
sort FILE | uniq -c | grep -v '^ *1 '
Pour l'exemple donné, le résultat serait:
3 123
2 234
Si vous souhaitez imprimer le nombre de toutes les lignes, y compris celles qui n'apparaissent qu'une seule fois:
sort FILE | uniq -c
ou, avec les options longues GNU (sous Linux):
sort FILE | uniq --count
Pour l'entrée donnée, la sortie est:
3 123
2 234
1 345
Afin de trier la sortie avec les lignes les plus fréquentes en haut, vous pouvez faire ce qui suit (pour obtenir tous les résultats):
sort FILE | uniq -c | sort -nr
ou, pour obtenir uniquement des lignes en double, les plus fréquentes en premier:
sort FILE | uniq -cd | sort -nr
sur OSX et BSD, le dernier devient:
sort FILE | uniq -c | grep -v '^ *1 ' | sort -nr