cuando intenta ordenar 'entrada' el siguiente archivo de texto:resultado inesperado de tipo GNU
test1 3
test3 2
test 4
con el comando
sort input
la salida es exactamente la entrada. Aquí está la salida de
od -bc input
:
0000000 164 145 163 164 061 011 063 012 164 145 163 164 063 011 062 012
t e s t 1 \t 3 \n t e s t 3 \t 2 \n
0000020 164 145 163 164 011 064 012
t e s t \t 4 \n
0000027
Es sólo un archivo separado pestaña con dos columnas. Cuando hago
sort -k 2
La salida cambia a
test3 2
test1 3
test 4
que es lo que se espera. Pero si lo hago
sort -k 1
nada cambia con respecto a la entrada, mientras que se puede esperar 'prueba' para ordenar antes 'test1'. Por último, si lo hago
cat input | cut -f 1 | sort
consigo
test
test1
test3
como se esperaba. ¿Hay una explicación lógica para esto? ¿Qué se supone que debe hacer la clase de forma predeterminada, algo así como:
sort -k 1
?
Mi versión de ordenar:
sort (GNU coreutils) 7.4
Incluso con un algoritmo de ordenación natural, la entrada (como se muestra) ya está ordenada. –