ordenar archivos tamaño linux

Listar archivos ordenados por tamaño en Linux

Listar archivos y directorios ordenados por tamaño en Linux es fácil con el comando ls (list).
El primer ejemplo no va a ordenar los archivos por tamaño, pero va a mostrar el tamaño de cada archivo o directorio listado. Para eso añadimos el parámetro -l  como se muestra en la próxima imagen:

ls -l
order archivos tamaño linux

Lo primero que se ve en el resultado de este comando es el total del tamaño en bytes del directorio en el que lo ejecutamos, en este caso 235636.

En la primera columna podemos ver los permisos. La segunda columna muestra los hard links y la tercera el propietario. La cuarta columna muestra el grupo, el tamaño en bytes de cada archivo, fecha de creación o modificación del mismo y finalmente su nombre en la última columna.

Listar archivos y directorios ordenados por tamaño en la consola:

Para ordenar el resultado según tamaño de mayor a menor usamos el parámetro -S (Sort) como se muestra en el próximo ejemplo:

ls -lS
listar archivos orden tamaño linux

Efectivamente ahora el resultado está ordenado de mayor a menor, sin embargo el formato en bytes no es human friendly o amistoso para el usuario, para mostrar el resultado en unidades GB, MB y KB podemos añadir el parámetro -h (Human friendly):

ls -lSh
ordenar archivos por tamaño con ls

Ahora el resultado es mucho más fácil de leer con unidades en MB y KB, y de haber en este ejemplo archivos o directorios lo suficientemente grandes también habrían unidades GB.

Si queremos hacer cualquiera de las acciones anteriores pero incluyendo también archivos ocultos se puede agregar el parámetro -a como en el siguiente ejemplo:

ls -lSah
Ordenar directorios por tamaño Linux

Los archivos ocultos son los que empiezan con un punto por ejemplo .cache.

Además de listar las unidades en GB, MB o KB podemos forzar al comando ls a limitarse a una única unidad usando el parámetro –block-size=, pero el problema (bastante grave) de esto es que solamente se muestran números enteros y no decimales, por lo que sí definimos que muestre el resultado en GB y nuestros archivos no llegan a ese tamaño, todos aparecerán como de 1 GB, la primera unidad entera más cercana al tamaño real, lo que es un resultado demasiado inexacto como en el siguiente ejemplo, en el que archivos de pocos MB o KB se muestran como de 1GB:

ls -lS --block-size=G
ordenar archivos por tamaño en la consola

Si reemplazamos la G del parámetro –block-size= por una M tendremos el resultado en unidades MB, y si se reemplaza por una K el resultado se mostrará en KB. El uso de parámetros y opciones de ls es muy intuitivo.

El siguiente ejemplo instruye a ls a mostrar archivos ocultos en KB, ordenados de mayor a menor:

ls -lSa --block-size=K
listar archivos por orden tamaño linux

Conclusión sobre ordenar archivos con el comando ls:

ordenar archivos y directorios por tamaño es tan fácil como añadirle un parámetro al comando ls, uno de los comandos más usados por usuarios de todos los niveles, por lo que esta acción es de nivel básico y todo usuario debe saberlo, o por lo menos saber que en el man (manual) del comando ls tienen la información necesaria para hacerlo.

Para el comando man, como cualquier otro comando simplemente ejecutan man ls y todas las opciones se imprimirán (las mismas pueden verse en línea en https://man7.org/linux/man-pages/man1/ls.1.html).

Espero que este tutorial sobre cómo listar y ordenar archivos y directorios por tamaño en Linux haya sido útil.

De ser así podes seguir Linux Latinoamérica en las redes sociales para mantenerte actualizado sobre novedades y nuevos tips para Linux, redes y seguridad o podes seguir leyendo un tuorial sobre comandos básicos de Linux.