Pregunta clasificación descendente orden de UNIX


Quiero ordenar un archivo de tabulación limitada en orden descendente según el quinto campo de los registros.

Lo intenté

sort -r -k5n filename

Pero no funcionó.


36
2017-08-14 17:46


origen


Respuestas:


La presencia del n opción adjunta a la -k5 causa el global -r opción que se ignorará para ese campo. Debes especificar ambos n y r al mismo nivel (global o local).

sort -t $'\t' -k5,5rn

o

sort -rn -t $'\t' -k5,5

43
2017-08-14 17:58



Si solo quieres ordenar solamente en el quinto campo, luego usa -k5,5.

Además, usa el -t interruptor de línea de comando para especificar el delimitador a tab. Prueba esto:

sort  -k5,5 -r -n -t \t filename

o si lo anterior no funciona (con el tab) esta:

sort  -k5,5 -r -n -t $'\t' filename

los página de manual para ordenar estados:

-t, --field-separator = SEP           use SEP en lugar de una transición que no sea en blanco a blanco

Finalmente, esta pregunta SO Unix Sort with Tab Delimiter podría ser útil.


11
2017-08-14 17:52



Para enumerar los archivos según el tamaño en orden de pedido.

find ./ -size +1000M -exec ls -tlrh {} \; |awk -F" " '{print $5,$9}'  | sort -n\

1
2017-07-04 12:00