Ordenar datos según la segunda columna de un archivo en Bash
-
Descripción general del comando
ordenar
en Bash - Ordenar datos según la segunda columna de un archivo en Bash
Este artículo educa sobre la clasificación de datos en función de la segunda columna de un archivo en bash.
Descripción general del comando ordenar
en Bash
Un archivo se ordena usando el comando ordenar
, que coloca los registros en un orden específico. De forma predeterminada, el comando ordenar
ordena los archivos asumiendo que contienen datos ASCII
.
La clasificación numérica es otra opción disponible a través del comando ordenar
. El comando ordenar
incluye las siguientes funciones:
- Las líneas que comienzan con un número se muestran antes que las líneas que comienzan con letras.
- Las líneas que comienzan con una letra que viene después en orden alfabético vendrán después de las líneas que comienzan con una letra anterior.
- Las líneas que comienzan con una letra en mayúscula se muestran antes que las que comienzan con la misma letra en minúscula.
Supongamos que creamos un archivo de datos con el nombre filename.csv
. Y abre ese archivo en bash usando el comando cat
.
Sintaxis para abrir un archivo en Bash:
$ cat filename.csv
Ordenar un archivo de mayúsculas y minúsculas, mayúsculas y minúsculas mixtas:
En un archivo mixto con letras mayúsculas y minúsculas, las letras mayúsculas se ordenan primero y luego los caracteres en minúsculas.
Existen numerosas opciones para la clasificación, que incluyen:
-
-k
: esta opción ayuda a ordenar los datos en función de cualquier columna especificada. Por ejemplo, el argumento-k5
ordenará comenzando con el quinto campo de cada línea, no el quinto carácter de cada línea (observe que la columna aquí se define como un campo delimitado por comas). -
-n
- Esta opción designa unorden
numérico, lo que significa que la columna debe leerse como una fila de números en lugar de texto. -
-r
- El orden de clasificación se invierte con la opción-r
. Otra forma de escribirlo es-reverse
. -
-i
- Esta opción ignora los caracteres que no se pueden imprimir. Otra forma de escribirlo es-ignorar-no imprimir
. -
-b
: esta opción no considera los espacios en blanco iniciales, lo cual es útil porque el número de filas se calcula usando espacios en blanco. Otra forma de escribirlo esignorar-los-espacios-en-blanco-principales
. -
-f
- Esta opción ignora las mayúsculas,A==a
. Otra forma de escribirlo esignorar-caso
. Esta opción hace que el preprocesamiento utilice un operador diferente al espacio:-t [nuevo separador]
.Otra forma de escribirlo es
-field-separator
.
Ordenar datos según la segunda columna de un archivo en Bash
Usando la opción -k
, sort
nos permite ordenar
un archivo por columnas. Comencemos creando un archivo con varias columnas. En la clasificación, se utiliza un solo espacio para dividir cada columna.
Por ejemplo, usamos -k 2
para ordenar
en la segunda columna. Ya hemos creado un archivo llamado filename.csv
. Los datos disponibles en dicho fichero se facilitan a continuación:
Bonie,22
Julie,23
Henry,15
Flamingo,34
Peter,11
Utilice el comando gato
para ver los elementos del archivo antes de ordenarlos.
$ cat filename.csv
Producción :
Bonie,22
Julie,23
Henry,15
Flamingo,34
Peter,11
Sintaxis para ordenar datos según la segunda columna de un archivo en Bash:
sort -k2 -n filename.csv
Salida después de ordenar la Segunda Columna:
Bonie,22
Flamingo,34
Henry,15
Julie,23
Peter,11