Peso de los directorios en Linux


Se me está por llenar el disco rígido externo, donde tengo fotos, películas, documentos y demás. Un terabyte de porquerías, pero nada que quiera borrar. ¿O sí? Ir directorio por directorio es tedioso y puede volverse una tarea abrumadora si aparecen muchos subdirectorios anidados con incierto contenido dentro de los mismos.

Se puede usar el comando du para obtener el tamaño de los directorios y encadenarlo con un sort para que el resultado aparezca ordenado por el tamaño de los mismos:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
$ du -sh * | sort -hr

368G Vídeos
178G blogs
41G  Descargas
5,1G VirtualBox VMs
4,2G Documentos
2,2G Imágenes
1,5G sistemas-operativos
611M calibre
219M opt
143M programas
4,4M bin
3,2M org
1,9M mis-proyectos
1,1M mis-configs
744K ordenar
452K temp
8,0K usr
4,0K Público
4,0K Plantillas
4,0K Música
4,0K Escritorio

Pero en StackExchange por supuesto que está la pregunta How do I get the size of a directory on the command line? y entre las respuestas alguien sugería usar ncdu, que es una versión con interfaz gráfica, y que además permite navegar por los directorios, lo cual facilita encontrar aquellos que ocupan mucho espacio.

En Debian, Ubuntu, Mint y semejantes se instala sencillamente con:

1
$ sudo apt-get install ncdu

Al ejecutarse, el programa lee todos los directorios a partir del directorio local (desde el cual se está ejecutando), y al finalizar la lectura presenta una pantalla como la que aparece debajo (click sobre ella para verla más grande). Con la tecla ? aparece una ayuda que indica las teclas que permiten la navegación, seleccionar diferentes criterios de ordenamiento (por nombre, por tamaño, etc), elegir el modo en que se presentan los porcentajes y también se pueden borrar directorios (con la tecla d).

Pantalla de ncdu