Estoy tratando de escribir una secuencia de comandos que calcule un tamaño de directorio y si el tamaño es menor a 10 GB y mayor a 2 GB, realice alguna acción. ¿Dónde debo mencionar el nombre de mi carpeta?
# 10GB
SIZE="1074747474"
# check the current size
CHECK="`du /data/sflow_log/`"
if [ "$CHECK" -gt "$SIZE" ]; then
echo "DONE"
fi
du
es y cómo todos conocen todos estos comandos: puede escribirman du
su terminal para buscar el comando du en el manual. Esto mostrará una salida que puede ver, y resumirá todos los indicadores como -h, -c, -s, -b, -B, --apparent-size, etc. que las respuestas sugiere que utilice. Luego, puede decidir por sí mismo cuál es la mejor manera de usarladu
para su caso de uso específico.Respuestas:
Tu puedes hacer:
que le dará el tamaño de su directorio de destino.
Si quieres una salida breve,
du -hcs your_directory
es agradable.fuente
du -hs
==du -hs .
.du | sort -n
ordenará los directorios por su tamañodu -hcs dir_name/*
incluye las subcarpetassi solo desea ver el tamaño de la carpeta y no las subcarpetas, puede usar:
Actualizar:
Deberías saber eso
du
muestra el espacio en disco utilizado; y no el tamaño del archivo.Puede usarlo
--apparent-size
si desea ver la suma de los tamaños de archivo reales.Y, por supuesto, no hay necesidad de
-h
una opción (legible para humanos) dentro de un script.En su lugar, puede usar
-b
para una comparación más fácil dentro del script.Pero debe tener en cuenta que se
-b
aplica--apparent-size
por sí mismo. Y puede que no sea lo que necesitas.así que creo que deberías usar
--block-size
o-B
fuente
Use un resumen (
-s
) y bytes (-b
). Puede cortar el primer campo del resumen concut
. Poniendolo todo junto:fuente
Para obtener el tamaño del directorio, nada más:
la salida se ve como
fuente
--max-depth
¡es muy útil para controlar la salida de manera útil! por ejemplo, para tener una buena idea de lo que sucede dentro de un directorio:du -h --max-depth=1
Para verificar el tamaño de todos los directorios dentro de un directorio, puede usar:
du -h --max-depth=1
fuente
du -h -d 1
en Androiddu -h -d 1
en OSXsi solo desea ver el tamaño agregado de la carpeta y probablemente en formato MB o GB, pruebe el siguiente script
fuente
-g
para-m
conteos de 1 Gbyte y 1 Mbyte. víaman du
fuente
Si ayuda, también puede crear un alias en su
.bashrc
o.bash_profile
.Esto imprime el tamaño del directorio actual o el directorio que ha pasado como argumento.
fuente