No es posible obtener el tamaño de un directorio ls
Pregunta
funciono con el comando sin éxito que el tamaño de directorios (archivos dentro pertenecen al tamaño de un directorio)
ls -lSrh
consigo solamente kilobits por el tamaño de directorios, mientras que su contenido es más que eso.
¿Cómo se puede enumerar el tamaño de directorios, incluyendo su contenido en el número de ls
Solución
du -sh directory_name
ls
va a darle el tamaño del directorio entrada , no de los contenidos del directorio. Con base en mi descremada rápida de man ls
no parece ser una manera de hacer <=> buceo a calcular el tamaño de los directorios (probablemente porque sería una operación costosa).
Otros consejos
Si desea obtener el tamaño de directorios, puede utilizar
du -sh
du -hs
es grande hasta que tenga un directorio grande.
Por ejemplo, si se almacenan los archivos de caché (por ejemplo, la tienda de sistema de archivos de caché para rieles) o archivos cargados, ... con un esquema de particiones, como "cache / 123/456/789 / real_files" y que tienen una gran cantidad de ellos , du
está tomando para siempre, con el tiempo el bloqueo de todos los IO.
No tengo una solución mejor, pero esto debe ser considerado antes de ejecutar este en el servidor de producción durante la hora punta.
Sobre la base de la respuesta de Sean brillante que puede hacer lo siguiente (en BASH)
for each in $(echo */ | sed "s/ /\n/g" | sed "s/\///g"); do du -hs "$each"; done;
Esto hará que un contenido de directorio completo de todos los directorios en el directorio actual.