El comando SORT se usa para ordenar un archivo, ordenando los registros en un orden particular. De forma predeterminada, el comando sort ordena el archivo asumiendo que el contenido es ASCII. El uso de opciones en el comando ordenar también se puede usar para ordenar numéricamente.
- El comando SORT ordena el contenido de un archivo de texto, línea por línea.
- sort es un programa de línea de comandos estándar que imprime las líneas de su entrada o la concatenación de todos los archivos enumerados en su lista de argumentos en orden ordenado.
- El comando sort es una utilidad de línea de comandos para clasificar líneas de archivos de texto. Admite la clasificación alfabética, en orden inverso, por número, por mes y también puede eliminar duplicados.
- El comando sort también puede ordenar por elementos que no están al principio de la línea, ignorar la distinción entre mayúsculas y minúsculas y devolver si un archivo está ordenado o no. La clasificación se realiza en función de una o más claves de clasificación extraídas de cada línea de entrada.
- De forma predeterminada, toda la entrada se toma como clave de clasificación. El espacio en blanco es el separador de campo predeterminado.
El comando sort sigue estas características como se indica a continuación:
- Las líneas que comienzan con un número aparecerán antes de las líneas que comienzan con una letra.
- Las líneas que comienzan con una letra que aparece antes en el alfabeto aparecerán antes de las líneas que comienzan con una letra que aparece más adelante en el alfabeto.
- Las líneas que comienzan con una letra minúscula aparecerán antes de las líneas que comienzan con la misma letra en mayúscula.
Ejemplos de
Suponga que crea un archivo de datos con el nombre file.txt:
Command : $ cat > file.txt abhishek chitransh satish rajan naveen divyam harsh
Ordenar un archivo: ahora use el comando ordenar
Sintaxis:
$ sort filename.txt
Command: $ sort file.txt Output : abhishek chitransh divyam harsh naveen rajan satish
Nota: Este comando en realidad no cambia el archivo de entrada, es decir, file.txt.
Función de clasificación con archivo de mezcla, es decir, mayúsculas y minúsculas: Cuando tenemos un archivo de mezcla con letras mayúsculas y minúsculas, primero se ordenarían las letras mayúsculas y luego las minúsculas.
Ejemplo:
Crea un archivo mix.txt
Command : $ cat > mix.txt abc apple BALL Abc bat
Ahora usa el comando sort
Command : $ sort mix.txt Output : Abc BALL abc apple bat
Opciones con función de clasificación:
1. -o Opción: Unix también nos proporciona facilidades especiales, como si desea escribir el salida a un nuevo archivo, output.txt, redirige la salida de esta manera o también puede usar la opción de clasificación incorporada -o, que le permite especificar un archivo de salida.
Usar la opción -o es funcionalmente lo mismo que redirigir la salida a un archivo.
Nota: Ninguno tiene ventaja sobre el otro.
Ejemplo: El archivo de entrada es el mismo que se mencionó anteriormente.
Sintaxis:
$ sort inputfile.txt > filename.txt $ sort -o filename.txt inputfile.txt
Command: $ sort file.txt > output.txt $ sort -o output.txt file.txt $ cat output.txt Output : abhishek chitransh divyam harsh naveen rajan satish
2. -r Opción: clasificación en orden inverso: Puede realizar una ordenación en orden inverso utilizando el indicador -r. el indicador -r es una opción del comando sort que ordena el archivo de entrada en orden inverso, es decir, en orden descendente por defecto.
Ejemplo: El archivo de entrada es el mismo que se mencionó anteriormente.
Sintaxis:
$ sort -r inputfile.txt
Command : $ sort -r file.txt Output : satish rajan naveen harsh divyam chitransh abhishek
3. -n Opción: Para ordenar un archivo numéricamente utiliza la opción –n. La opción -n también está predefinida en Unix como las opciones anteriores. Esta opción se utiliza para ordenar el archivo con datos numéricos presentes en su interior.
Ejemplo :
Consideremos un archivo con números:
Command : $ cat > file1.txt 50 39 15 89 200
Sintaxis:
$ sort -n filename.txt
Command : $ sort -n file1.txt Output : 15 39 50 89 200
4. -nr opción: Para ordenar un archivo con datos numéricos en orden inverso podemos usar la combinación de dos opciones como se indica a continuación.
Ejemplo: El archivo numérico es el mismo que el anterior.
Sintaxis:
$ sort -nr filename.txt
Command : $ sort -nr file1.txt Output : 200 89 50 39 15
5. -k Opción: Unix proporciona la función de ordenar una tabla en el base de cualquier número de columna usando la opción -k.
Utilice la opción -k para ordenar en una columna determinada. Por ejemplo, use «-k 2» para ordenar en la segunda columna.
Ejemplo :
Creemos una tabla con 2 columnas.
$ cat > employee.txt manager 5000 clerk 4000 employee 6000 peon 4500 director 9000 guard 3000
Sintaxis:
$ sort -k filename.txt
Command : $ sort -k 2n employee.txt guard 3000 clerk 4000 peon 4500 manager 5000 employee 6000 director 9000
6. -c opción: Esta opción se utiliza para comprobar si el el archivo dado ya está ordenado o no & comprueba si un archivo ya está ordenado, pase la opción -c para ordenar. Esto escribirá en la salida estándar si hay líneas que no funcionan. La herramienta de ordenación se puede utilizar para comprender si este archivo está ordenado y qué líneas están desordenadas.
Ejemplo :
Suponga que existe un archivo con una lista de autos llamado cars.txt.
Audi Cadillac BMW Dodge
Sintaxis:
$ sort -c filename.txt
Command : $ sort -c cars.txt Output : sort: cars.txt:3: disorder: BMW Note : If there is no output then the file is considered to be already sorted
7. -u opción: Para ordenar y eliminar duplicados pase la opción -u para ordenar. Esto escribirá una lista ordenada en la salida estándar y eliminará los duplicados.
Esta opción es útil ya que los duplicados que se eliminan nos dan un archivo redundante.
Ejemplo: Suponga que existe un archivo con una lista de autos llamado cars.txt.
Audi BMW Cadillac BMW Dodge
Sintaxis:
$ sort -u filename.txt
Command : $ sort -u cars.txt $ cat cars.txt Output : Audi BMW Cadillac Dodge
8. -M Opción: Para ordenar por mes pase la opción -M para ordenar. Esto escribirá una lista ordenada en la salida estándar ordenada por nombre de mes.
Ejemplo:
Suponga que el siguiente archivo existe y se guarda como months.txt
$ cat > months.txt
February January March August September Syntax :
$ sort -M filename.txt
Usar la opción -M con sort nos permite ordenar este archivo.
Command : $ sort -M months.txt $ cat months.txt Output : January February March August September
Aplicación y usos del comando sort:
- Puede ordenar cualquier tipo de archivo, ya sea un archivo de tabla, un archivo de texto, un archivo numérico, etc.
- La clasificación se puede implementar directamente de un archivo a otro sin que el trabajo actual se vea obstaculizado.
- La clasificación de archivos de tablas en base a columnas se ha simplificado y simplificado.
- Hay tantas opciones disponibles para clasificar de todas las formas posibles.
- El uso más beneficioso es que un archivo de datos en particular se puede utilizar muchas veces, ya que no se realiza ningún cambio en el archivo de entrada proporcionado.
- Los datos originales siempre están seguros y no se ven obstaculizados.