Con herramientas estándar disponibles:
Para enumerar los 10 archivos más grandes del directorio actual:du . | sort -nr | head -n10
Para enumerar los directorios más grandes del directorio actual:du -s * | sort -nr | head -n10
ACTUALIZAR En estos días, generalmente uso una forma más legible (como explica Jay Chakra en otra respuesta y dejo el | head -n10
, simplemente deje que se desplace fuera de la pantalla. La última línea tiene el archivo o directorio (árbol) más grande.
A veces, por ej. cuando tiene muchos puntos de montaje en el directorio actual, en lugar de usar -x
o múltiples --exclude=PATTERN
, es más práctico montar el sistema de archivos en un punto de montaje no utilizado (a menudo /mnt
) y trabajar desde allí.
Tenga en cuenta que cuando trabaja con grandes volúmenes (NFS), puede causar una carga sustancial en el backend de almacenamiento (archivador) al ejecutar du
sobre muchos (sub)directorios. En ese caso, es mejor considerar configurar quota
en el volumen.
Agregando a la respuesta de jippie
Para enumerar los directorios más grandes del directorio actual en formato legible por humanos:
du -sh * | sort -hr | head -n10
Muestra:
[~]$ du -sh * | sort -hr | head -n10
48M app
11M lib
6.7M Vendor
1.1M composer.phar
488K phpcs.phar
488K phpcbf.phar
72K doc
16K nbproject
8.0K composer.lock
4.0K README.md
Lo hace más conveniente para leer :)
Prueba ncdu
, ya que puede brindarle una descripción general del uso del disco. Desde su sitio web:
Un analizador de uso de disco con una interfaz ncurses, destinado a ejecutarse en un servidor remoto donde no tiene una configuración física completa, pero tiene que ver con una conexión SSH simple. ncdu pretende ser rápido, simple y fácil de usar, y debería poder ejecutarse en cualquier entorno mínimo similar a POSIX con ncurses instalado.