bash - una - Obtenga el tamaño total de las carpetas con find & du
ver tamaño de archivos y carpetas linux (4)
Feed du con los resultados de encontrar:
du -shc $(find . -name bak -type d)
Estoy tratando de obtener el tamaño de los directorios llamados "bak" con find y du.
Hago eso: find -name bak -type d -exec du -ch ''{}'' /;
Pero devuelve el tamaño para cada carpeta llamada "bak", no el total.
De todos modos para conseguirlos? Gracias :)
Prueba du -hcs
. De la página del manual:
-s, --summarize
display only a total for each argument
Si hay muchos archivos, el uso de -exec ... +
puede ejecutarse varias veces y obtendría múltiples subtotales.
Una alternativa es canalizar el resultado de encontrar:
find . -name bak -type d -print0 | du -ch --files0-from=-
Use xargs(1)
lugar de -exec
:
find . -name bak -type d | xargs du -ch
-exec
ejecuta el comando para cada archivo encontrado (verifique la documentación de find(1)
). Conectar a xargs
te permite agregar esos nombres de archivo y solo ejecutar du
una vez. También podrías hacer:
find -name bak -type d -exec du -ch ''{}'' /; +
Si su versión de find
soporta.