Cargando…

¿Listo para aprender?

Pulsa en el botón y disfruta de nuestros cursos GRATIS o en oferta
VER LOS CURSOS

Ordenar con el comando sort

En este post vamos explicar el comando sort, que nos servirá para ordenar líneas de texto de diferentes formas.

Ordenar alfabéticamente

Si ejecutamos el comando sin ninguna opción, realizará una ordenación basada en los caracteres de texto por los que empieza la línea.

Por ejemplo, si ejecutamos sort /etc/passwd veremos que ordena las líneas en función del nombre de usuario, que es la palabra que se encuentra al inicio. Si queremos que la ordenación sea de manera inversa, de la Z a la A, utilizaremos la opción -r

Ordenar numéricamente

En algunas ocasiones necesitamos que la ordenación no interprete los caracteres como simples letras, si no que sepa interpretar números o magnitudes. Supongamos por ejemplo que tenemos un fichero con lo que ocupan los directorios del sistema. Si hacemos una ordenación con sort size_bytes vemos que primero pone todos los que empiezan por 0, luego todos los que empiezan por 1 etc… pero no es una ordenación basada en el numero entero, si no que ordena por el primer carácter, luego por el segundo, etc…

La opción -n nos permite interpretar los números correctamente, de tal forma que si hacemos sort -n size_bytes ya nos aparecerá ordenado correctamente.

Ordenar por tamaño

Otro caso que se nos podría presentar es que el listado no estuviera en bytes porque son más difíciles de interpretar, si no que estuviera expresado en magnitudes más comprensibles, por ejemplo en k’s, megas, gigas etc…

Si intentamos hacer un sort -n size_h vemos que se basa en el número, pero no tiene en cuenta la letra que hay después. Para indicarle que las cifras están expresadas en modo «humano», le indicamos la opción -h. Así, sort -h size_h sí nos hará una ordenación correcta.

Si os parece interesante podéis suscribiros a nuestro canal de youtube sobre Linux

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.