Comando shell para el tamaño de las carpetas

Resuelto
lamou23 Mensajes publicados 218 Estado Miembro -  
bob031 Mensajes publicados 8228 Estado Miembro -
Hola,

tengo el directorio /var/www que contiene varios carpetas, quiero mostrar las diferentes carpetas con su tamaño, ejecuté esto:

du -h 
y me muestra:

1,6M ./pfe/administration
548K ./pfe/rrdtool/fichierorig
3,3M ./pfe/rrdtool/graphes
9,9M ./pfe/rrdtool/archives
516K ./pfe/rrdtool/images
5,9M ./pfe/rrdtool/performance/graphes
12M ./pfe/rrdtool/performance/archives
19M ./pfe/rrdtool/performance
20K ./pfe/rrdtool/scripts
35M ./pfe/rrdtool
324K ./pfe/script
39M ./pfe
40K ./rrdtool
72K ./js
84K ./bdd
208K ./rrdtool1

1- lo que quiero como resultado es solo la tamaño total de las carpetas que están dentro de /var/www, sin entrar en su contenido y mostrar las tallas de subcarpetas, archivos y todo.

¿es posible hacerlo?

2- si acaso quiero mostrar por ejemplo solo las carpetas que tienen un tamaño > 20K??
¿hay un comando que me lo permita??

muchas gracias

3 respuestas

jipicy Mensajes publicados 40842 Fecha de registro   Estado Moderador Última intervención   4 898
 
Hola,

Para el 1:

du -sh /var/www/*

Para el 2 hay que ver con el comando "find" y sus opciones, en particular "-size +20480k", pero eso solo se aplica a archivos con la opción "-type f".

O bien hacerlo con el comando del "1" y herramientas como "awk" a través de un pipe...

--
$ man mujer
No hay página de manual para mujer.

GNU/Linux : GNU/Linux no es Ubuntu !
0
lamou23 Mensajes publicados 218 Estado Miembro
 
Para el 1, me da el tamaño de todos los archivos existentes en /var/www, cuando quiero obtener los tamaños totales de los directorios existentes en /var/www sin detallar el tamaño de los archivos dentro de cada carpeta:

por ejemplo si tengo en /var/www los siguientes directorios:

dossiers1
dossiers2
dossier3

cada directorio contiene archivos y subdirectorios

Quiero obtener como resultado después de ejecutar lo siguiente:

10M dossiers1
100M dossiers

....

espero haber sido más claro

gracias
0
jipicy Mensajes publicados 40842 Fecha de registro   Estado Moderador Última intervención   4 898
 
Intenta con esto (para carpetas > 20K):

find /var/www -maxdepth 1 -type d -exec du -s {} \; | awk '$1 >= 20 { print $0 }'
0