Búsqueda de los Archivos más Grandes
Hasta ahora, hemos analizado el tamaño de los directorios. Pero, ¿qué pasa si queremos encontrar los archivos específicos que ocupan más espacio? El comando du trabaja principalmente con directorios, pero podemos combinarlo con otros comandos para localizar archivos grandes.
Usaremos el comando find junto con du. Si no conoce find, aquí le explicamos su funcionamiento.
Primero, regresemos al directorio del proyecto:
cd ~/project
Ahora, usemos find y du para localizar los archivos más grandes:
find . -type f -exec du -h {} + | sort -hr | head -n 5
Este comando puede parecer complejo, así que vamos a desglosarlo:
find . -type f: Busca todos los archivos (-type f) en el directorio actual (.) y sus subdirectorios.
-exec du -h {} +: Ejecuta du -h en cada archivo encontrado. El símbolo {} se reemplaza por el nombre del archivo, y el + indica a find que pase tantos nombres de archivo como sea posible a cada ejecución de du.
sort -hr: Ordena los resultados por tamaño en orden inverso (el más grande primero).
head -n 5: Muestra solo los primeros 5 resultados.
Verá una salida similar a esta:
10M ./backups/large_backup.bak
5.0M ./logs/application/large_app_log.log
0 ./logs/system/placeholder.log
0 ./logs/archive/placeholder.log
0 ./logs/application/placeholder.log
Esta salida nos muestra los cinco archivos más grandes en el directorio del proyecto y sus respectivos tamaños.
Para enfocarnos en archivos que superen un tamaño específico, podemos modificar el comando. Busquemos archivos mayores a 1MB:
find . -type f -size +1M -exec du -h {} + | sort -hr
Este comando añade -size +1M para filtrar únicamente los archivos que superan 1 megabyte.
Estos comandos son increíblemente útiles cuando intenta liberar espacio en disco, ya que le permiten identificar rápidamente los archivos más pesados, que suelen ser los mejores candidatos para ser eliminados o archivados.