GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo ordenar un archivo, en función de sus valores numéricos para un campo?

Eche un vistazo a la página del manual para ordenar...

   -n, --numeric-sort
          compare according to string numerical value

Así que aquí hay un ejemplo...

sort -n filename

Si está clasificando cadenas que son texto y números mixtos, por ejemplo, nombres de archivo de registros continuos, luego ordene con sort -n no funciona como se esperaba:

$ ls |sort -n
output.log.1
output.log.10
output.log.11
output.log.12
output.log.13
output.log.14
output.log.15
output.log.16
output.log.17
output.log.18
output.log.19
output.log.2
output.log.20
output.log.3
output.log.4
output.log.5
output.log.6
output.log.7
output.log.8
output.log.9

En ese caso la opción -V hace el truco:

$ ls |sort -V
output.log.1
output.log.2
output.log.3
output.log.4
output.log.5
output.log.6
output.log.7
output.log.8
output.log.9
output.log.10
output.log.11
output.log.12
output.log.13
output.log.14
output.log.15
output.log.16
output.log.17
output.log.18
output.log.19
output.log.20

de la página man:

   -V, --version-sort
          natural sort of (version) numbers within text

Linux
  1. Cómo guardar la salida del comando en un archivo en Linux

  2. Cómo filtrar las entradas del archivo de registro según el rango de fechas

  3. ¿Cómo contar el número de valores únicos de un campo en un archivo de texto delimitado por tabuladores?

  4. ¿Cómo agregar la salida a un archivo?

  5. ¿Cómo redirigir la salida de system() a un archivo?

Cómo usar CherryTree para tomar notas

¿Cómo ordenar la salida Du por tamaño?

¿Cómo redirigir la salida de un programa a un archivo zip?

Cómo vaciar un archivo de registro en Linux

¿Cómo imprimo los valores ASCII (numéricos) de cada carácter en un archivo?

iftop:¿cómo generar un archivo de texto con su salida?