El comando sort -k
en shell se usa para ordenar archivos o listas de datos en función de una columna específica.
sort -k N archivo.txt
Donde N es el número de la columna a partir de la cual se quiere ordenar.
Supongamos que tenemos un archivo datos.txt
con este contenido:
Carlos 35
Ana 28
Luis 40
Elena 22
Si ejecutamos:
sort -k 2 -n datos.txt
El resultado será:
Elena 22
Ana 28
Carlos 35
Luis 40
Aquí, -k 2
indica que queremos ordenar por la segunda columna, y -n
asegura que la ordenación sea numérica.
sort -k 1 datos.txt
Salida:
Ana 28
Carlos 35
Elena 22
Luis 40
Si queremos ordenar de mayor a menor, usamos -r
:
sort -k 2 -n -r datos.txt
Salida:
Luis 40
Carlos 35
Ana 28
Elena 22
-n
→ Ordenación numérica.
-r
→ Orden inverso (de mayor a menor).
-t
→ Especificar un delimitador si los campos están separados por otro símbolo en vez de espacios.
sort -t ',' -k 2 archivo.csv
-k N,M
→ Ordenar por un rango de columnas.
¿Quieres que adapte esta explicación a un caso específico que estés trabajando?