Traté de ordenar el contenido de un archivo en el escritorio de Ubuntu 14.04 (Trusty Tahr). En mi caso, el resultado esperado debería ser el mismo que el contenido original, pero el resultado real no lo es. ¿Por qué?
# cat test.txt
a++-a
a++-b
a++-c
ab
ac
# cat test.txt | sort
a++-a
ab
a++-b
ac
a++-c
command-line
sort
usuario2909884
fuente
fuente

cat.cat test.txt | sortporsort test.txt:)catpara comenzar. Por ejemplocat FILE | grep dev | sort, solo se mostrarán líneas con "dev" en ellas (en orden). El usosort FILE | grep devproduce la misma salida pero de color.Respuestas:
Puede usar
LC_ALLvariable, configúreloLC_ALL=Cantes de llamarsortLea esta respuesta, si quiere saber qué es esto mágicamente
LC_ALL=C. Aquí hay un breve resumen:Además, como señaló @KenMollerup, cite de
man sortEntonces, cuando use ordenar con
LC_ALL=C, ordene los símbolos de comparación por byte. Desortlo contrario , ignorará todos los caracteres no alfanuméricos.fuente
man sort. No me di cuentaLa ordenación usa la ordenación alfabética y numérica, igual que nosotros, los caracteres especiales como + - <> ... se ignoran, los números se tratan numéricamente, así que 1, 2, 3 ... viene antes del 11, 12 1066 1104 - ¡mira!
Entonces su lista se ve como: aa, ab, ab, ac, ac
fuente
man sort, agregar ejemplos.