14 ejemplos útiles del comando ‘sort’ de Linux – Parte 1

Sort es un programa de Linux que se utiliza para imprimir líneas de archivos de texto de entrada y la concatenación de todos los archivos en orden ordenado. El comando de clasificación toma un espacio en blanco como separador de campo y el archivo de entrada completo como clave de clasificación. Es importante tener en cuenta que el comando sort no clasifica los archivos en realidad, sino que solo imprime la salida ordenada, hasta que redirige la salida.

Este artículo tiene como objetivo una visión profunda del comando ‘ sort ‘ de Linux con 14 ejemplos prácticos útiles que le mostrarán cómo usar el comando sort en Linux.

1. Primero crearemos un archivo de texto ( &ltstrong&gttecmint.txt&lt/strong&gt ) para ejecutar ejemplos de comandos ‘ ordenar ‘. Nuestro directorio de trabajo es ‘ / home / $ USER / Desktop / tecmint .

La opción ‘ -e ‘ en el siguiente comando habilita la interpretación de la barra invertida y / n le dice a echo que escriba cada cadena en una nueva línea.

$ echo -e "computernmousenLAPTOPndatanRedHatnlaptopndebiannlaptop" > tecmint.txt

Dividir cadena por líneas en Linux

2. Antes de comenzar con ‘ ordenar ‘, echemos un vistazo al contenido del archivo y su apariencia.

$ cat tecmint.txt

Verificar el contenido del archivo

3. Ahora ordena el contenido del archivo usando el siguiente comando.

$ sort tecmint.txt

Ordenar contenido de archivo linux

Nota: El comando anterior en realidad no ordena el contenido del archivo de texto, solo muestra la salida ordenada en la terminal.

4. Ordene el contenido del archivo ‘ tecmint.txt ‘ y escríbalo en un archivo llamado ( sorted.txt ) y verifique el contenido usando el comando cat.

$ sort tecmint.txt > sorted.txt
$ cat sorted.txt

Ordenar el contenido del archivo en Linux

5. Ahora ordene el contenido del archivo de texto ‘ tecmint.txt ‘ en orden inverso usando el interruptor ‘ -r ‘ y redirija la salida a un archivo ‘ reversesorted.txt ‘. También verifique la lista de contenido del archivo recién creado.

$ sort -r tecmint.txt > reversesorted.txt
$ cat reversesorted.txt

Ordenar contenido por orden inverso

6. Vamos a crear un nuevo archivo ( lsl.txt ) en la misma ubicación para obtener ejemplos detallados y completarlo usando la salida de ‘ ls -l ‘ para su directorio personal.

$ ls -l /home/$USER > /home/$USER/Desktop/tecmint/lsl.txt
$ cat lsl.txt

Rellenar la salida del directorio de inicio

Ahora veremos ejemplos para ordenar el contenido en base a otro campo y no a los caracteres iniciales predeterminados.

7. Ordene el contenido del archivo ‘ lsl.txt ‘ según la segunda columna (que representa el número de enlaces simbólicos).

$ sort -nk2 lsl.txt

Nota: La opción ‘ -n ‘ en el ejemplo anterior ordena el contenido numéricamente. La opción ‘ -n ‘ debe usarse cuando queremos ordenar un archivo en base a una columna que contiene valores numéricos.

Ordenar contenido por columna

8. Ordene el contenido del archivo ‘ lsl.txt ‘ &ltstrong&gtbasándose&lt/strong&gt en la novena columna (que es el nombre de los archivos y carpetas y no es numérico).

$ sort -k9 lsl.txt

Ordenar contenido según la columna

9. No siempre es esencial ejecutar el comando sort en un archivo. Podemos canalizarlo directamente en la terminal con el comando real.

$ ls -l /home/$USER | sort -nk5

Ordenar contenido usando la opción de tubería

10. Ordene y elimine los duplicados del archivo de texto tecmint.txt . Compruebe si el duplicado se ha eliminado o no.

$ cat tecmint.txt
$ sort -u tecmint.txt

Ordenar y eliminar duplicados

Reglas hasta ahora (lo que hemos observado):

  1. Las líneas que comienzan con números son las preferidas en la lista y se encuentran en la parte superior hasta que se especifique lo contrario ( -r ).
  2. Las líneas que comienzan con letras minúsculas son las preferidas en la lista y se encuentran en la parte superior hasta que se especifique lo contrario ( -r ).
  3. Los contenidos se enumeran sobre la base de la aparición de alfabetos en el diccionario hasta que se especifique lo contrario ( -r ).
  4. Ordenar orden por defecto trata cada línea como una cadena y luego ordénala dependiendo de la ocurrencia de alfabetos en el diccionario (se prefiere Numérico ver regla – 1) hasta que se especifique lo contrario.

11. Cree un tercer archivo ‘ lsla.txt ‘ en la ubicación actual y rellénelo con la salida del &ltstrong&gtcomando&lt/strong&gt ‘ &ltstrong&gtls -lA&lt/strong&gt ‘.

$ ls -lA /home/$USER > /home/$USER/Desktop/tecmint/lsla.txt
$ cat lsla.txt

Rellenar la salida con archivos ocultos

Aquellos que entienden el comando ‘ &ltstrong&gtls&lt/strong&gt ‘ saben que ‘ ls -lA’ = ‘ls -l ‘ + Archivos ocultos . Entonces, la mayor parte del contenido de estos dos archivos sería el mismo.

12. Ordene el contenido de dos archivos en la salida estándar de una sola vez.

$ sort lsl.txt lsla.txt

Ordenar contenido de dos archivos

Observe la repetición de archivos y carpetas.

13. Ahora podemos ver cómo ordenar, fusionar y eliminar duplicados de estos dos archivos.

$ sort -u lsl.txt lsla.txt

 Ordenar, fusionar y eliminar duplicados del archivo

Tenga en cuenta que se han omitido los duplicados de la salida. Además, puede escribir la salida en un archivo nuevo redirigiendo la salida a un archivo.

14.
También podemos ordenar el contenido de un archivo o la salida en función de más de una columna. Ordene la salida del comando ‘ &ltstrong&gtls -l&lt/strong&gt ‘ según el campo 2,5 (numérico) y 9 (no numérico).

$ ls -l /home/$USER | sort -t "," -nk2,5 -k9

Ordenar contenido por columna de campo

Eso es todo por ahora. En el próximo artículo cubriremos algunos ejemplos más del comando ‘ ordenar ‘ en detalle para usted. Hasta entonces, estad atentos y conectados a Tecmint. Sigue compartiendo. Sigue comentando. Me gusta y comparte con nosotros y ayúdanos a difundir.

Lea también: 7 ejemplos interesantes de comandos ‘sort’ de Linux – Parte 2

Comandos de Linux

Leave a Comment

Your email address will not be published. Required fields are marked *

Hazlo Linux