normal:
echo "a b a b c c c" | tr ' ' '\n'
a
b
a
b
c
c
c
uniq: não há duas linhas de repetição subsequentes
echo "a b a b c c c" | tr ' ' '\n' | uniq
a
b
a
b
c
ordenado
echo "a b a b c c c" | tr ' ' '\n' | sort
a
a
b
b
c
c
c
sort -u: não há duas linhas repetidas
echo "a b a b c c c" | tr ' ' '\n' | sort -u
a
b
c
sort / uniq: todos distintos
echo "a b a b c c c" | tr ' ' '\n' | sort | uniq
a
b
c
conta ocorrências distintas
echo "a b a b c c c" | tr ' ' '\n' | sort | uniq -c
2 a
2 b
3 c
somente linhas que não são repetidas (não classificadas primeiro)
echo "a b a b c c c" | tr ' ' '\n' | uniq -u
a
b
a
b
apenas linhas que não são repetidas (após a classificação)
echo "a b a b c c c Z" | tr ' ' '\n' | sort | uniq -u
Z
uniq -d: imprime apenas linhas duplicadas, uma para cada grupo
echo "a b a b c c c" | tr ' ' '\n' | uniq -d
c
.. contado
echo "a b a b c c c" | tr ' ' '\n' | uniq -dc
3 c