Ordinaire:
echo "a b a b c c c" | tr ' ' '\n'
a
b
a
b
c
c
c
uniq: pas deux lignes répétées
echo "a b a b c c c" | tr ' ' '\n' | uniq
a
b
a
b
c
triés
echo "a b a b c c c" | tr ' ' '\n' | sort
a
a
b
b
c
c
c
sort -u: pas deux lignes répétitives
echo "a b a b c c c" | tr ' ' '\n' | sort -u
a
b
c
sort / uniq: tous distincts
echo "a b a b c c c" | tr ' ' '\n' | sort | uniq
a
b
c
compte des occurrences distinctes
echo "a b a b c c c" | tr ' ' '\n' | sort | uniq -c
2 a
2 b
3 c
seulement les lignes qui ne sont pas répétées (non triées en premier)
echo "a b a b c c c" | tr ' ' '\n' | uniq -u
a
b
a
b
seulement les lignes qui ne sont pas répétées (après le tri)
echo "a b a b c c c Z" | tr ' ' '\n' | sort | uniq -u
Z
uniq -d: imprime uniquement les lignes en double, une pour chaque groupe
echo "a b a b c c c" | tr ' ' '\n' | uniq -d
c
.. compté
echo "a b a b c c c" | tr ' ' '\n' | uniq -dc
3 c