GNU/Linux >> Tutoriales Linux >  >> Linux

Ordenando en bash

Usar:

cut -f <col_num> <filename>
    | sort 
    | uniq -c
    | sort -r -k1 -n
    | awk '{print $2" "$1}'

El sort -r -k1 -n ordena en orden inverso, utilizando el primer campo como un valor numérico. El awk simplemente invierte el orden de las columnas. Puede probar los comandos de tubería agregados así (con un formato más agradable):

pax> echo '105 Linux
55  MacOS
500 Windows' | sort -r -k1 -n | awk '{printf "%-10s %5d\n",$2,$1}'
Windows      500
Linux        105
MacOS         55

Mía:

cut -f <column_number> <filename> | sort | uniq -c | awk '{ print $2" "$1}' | sort

Esto alterará el orden de las columnas (awk) y luego ordenará la salida.

Espero que esto te ayude


Linux
  1. Bash secuencias de comandos (I)

  2. Clasificación de varias claves con clasificación de Unix

  3. Ordenar un archivo delimitado por tabulaciones

  4. Ordenar en el último campo de una línea

  5. Ordenar números con múltiples decimales en bash

Declaración de Bash if..else

Arreglos bash

Bash Shebang

Comando Bash printf

Matriz asociativa en Bash

Usando Bash Sort para ordenar archivos como un jefe