|
||
|
![]() |
![]() |
Tasker Para hablar de todo lo relacionado con la aplicación tasker |
![]() |
|
Herramientas |
#1
|
||||
|
||||
Saber cuanto ocupa un archivo o carpeta y meterlo en una variable
Quería poder saber cuanto ocupa una carpeta o archivo determinado y poder manejar esa información con tasker poder decir que no haga tal cosa si el archivo o carpeta tal ocupa más o menos de tantos megas o gigas. Lo que quiero es antes de hacer un backup con Folder Sync si ocupa tanto que no haga ese backup, yo tengo que al conectar al wifi me los hag pero a veces es muy pesada la carpeta y preferiría que haga uno especial que lo tengo configurado a la noche solo si se está cargado y a determinada hora solo si ocupa mucho
|
|
#2
|
||||
|
||||
En la acción (misc) PRUEBA tienes un tipo de prueba llamado FILE SIZE (tamaño de fichero) que puedes aplicar sobre el fichero que quieras y en la misma acción decides en cuál variable se guardará el resultado. No creo que funcione con carpetas.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Última edición por Caravantes Día 13/02/14 a las 10:56:13. |
Gracias de parte de: | ||
#3
|
||||
|
||||
Funciona, Gracias!! me tira un numero con cada carpeta que lo acciono, pongo para probar un If si "%tam"es Mayor o menot a ese resultado y vibra o no en funcion si es mayor o menor
Hora estoy media perdida en una estupidez que seguro alguno debe saber en que media lo claculua?? la carpeta pesa 1.48 gigas (un giga y medio mas o menos) y el numero que sale es 32768, son kilobytes? pero segun una pagina quec calcula 32768 kilobytes son 0.03125 gigabyte. De echo si pongo ese numero y lo pong en todas las medidas ninguna me da 1.48 gigas o aproximadamente. EDITO: Me parece que no calcula los tamaños no se bien que hace ni que es ese numero, porque todas las carpetas que pongo me tira dos numeros o "16384" o " 32768" Última edición por Jusss Día 12/02/14 a las 16:10:56. |
#4
|
||||
|
||||
Para directorios puedes usar el comando de terminal "du" (disk usage):
Código:
du -s /ruta/al/directorio | awk '{print $1}' Es en KB, para sacarlo en MB tienes que dividir por 1024, o por 1048576 (1024x1024) para sacarlo en GB |
Los siguientes 3 usuarios han agradecido a maid450 su comentario: | ||
#5
|
||||
|
||||
Para directorios puedes usar el comando de terminal "du" (disk usage):
Código:
du -s /ruta/al/directorio | awk '{print $1}' Es en KB, para sacarlo en MB tienes que dividir por 1024, o por 1048576 (1024x1024) para sacarlo en GB ![]() ![]() Te hago otra consulta si quisiese sumar cada una y poner un numero total de todas, cual seria la mejor manera de hacerlo? sacar variables de todas y sumar esas variables? igual esa ultima tampoco se hacerla jaja. |
#6
|
||||
|
||||
Me alegro de que te funcione :-D
Pues yo lo que haría es usar un bucle, algo así: Código:
Establecer variable %carpetas a /ruta/carpeta1,/ruta/carpeta2,/ruta/carpeta3,... Establecer variable %suma a 0 For variable %carpeta valores %carpetas Ejecutar comando "du -s %carpeta | awk '{print $1}'" guardar salida en %resultado Aquí puedes hacer lo que quieras con %carpeta y %resultado, que son la carpeta que se está procesando y su tamaño Sumar %resultado a variable %suma End for Aquí %suma es la suma total del valor de las carpetas |
Los siguientes 2 usuarios han agradecido a maid450 su comentario: | ||
#7
|
||||
|
||||
Para completar el asunto se me ocurre otra pregunta un poco más general: ¿Cuál es el método para meter en una matriz de ese tipo todas las subcarpetas que haya en un directorio concreto? ¿Y para meter en la matriz todos los archivos de ese directorio?
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
|
![]() |
![]() |
||||||
|