normal:
echo "a b a b c c c" | tr ' ' '\n'
a
b
a
b
c
c
c
uniq: no hay dos líneas repetidas posteriores
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: no hay dos líneas 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
cuenta sucesos distintos
echo "a b a b c c c" | tr ' ' '\n' | sort | uniq -c
2 a
2 b
3 c
solo líneas que no se repiten (no se ordenan primero)
echo "a b a b c c c" | tr ' ' '\n' | uniq -u
a
b
a
b
solo líneas que no se repiten (después de ordenar)
echo "a b a b c c c Z" | tr ' ' '\n' | sort | uniq -u
Z
uniq -d: solo imprime líneas duplicadas, una 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