Ver la Versión Completa : [ CONSULTA ] Reducir código (y/o depurar)
SmartPhoneLover
25/10/16, 14:23:35
A ver si me podeis hechar una manita con este código para poder reducirlo y hacerlo más llevadero porque van a ser una serie de acciones consecutivas, y en una única línea de comandos en Tasker.
¿Que quiero hacer en resumidas cuentas?
1. Comprimir un archivo (or carpeta)
2. Asignarle un nombre al archivo final
3. Aplicar compresión al archivo generado
4. Borrar SOLO el contenido de la carpeta que acabé de comprimir
5. Mover el archivo anteriormente creado a la carpeta ahora VACIA
Así me quedo:
cd /xxx && tar -cf xxx_%DATE.xxx "$$$" && gzip -x xxx_%DATE.xxx && cd "###" && rm -r * .* && cd /xxx && mv -f xxx_%DATE.rar.gz "€€€"Y esta es la descripción que le ofrezco a los usuarios que lo usen:
[cd /'xxx'] = path to backup folder (parent dir) ; ['xxx'_%DATE] = file name (no name spaces) ; ['$$$'] = folder with files to back up ; [gzip -'x'] = compression level (1-9) ; [%DATE.'xxx'] = files container (.zip/.rar/.tar) ; ['###'] = same as -> '$$$' ; ['€€€'] = same as -> '###' & '$$$'
SmartPhoneLover
25/10/16, 14:33:34
Mmmm, seguro que os haceis varias preguntas. Intentaré responder a las posibles que imagino puedan hacerme:
- ¿Cual es la ruta en la que tienes pensado trabajar?
-> A ser posible en la memoria externa (SD Card)
- ¿Por qué has usado en todos los comandos la concatenación '&&'?
-> Simplemente por que no quiero que el siguiente comando se ejecute si el anterior falla por X motivo. Por seguridad.
- ¿Que función tiene la variable '%DATE' en tus archivos generados?
-> Todo el código que veis arriba forma parte de una tarea mayor que se destinará a crear copias de seguridad variadas, en resumidas cuentas: COPIAS DE SEGURIDAD. Pues incluyo esa variable para que Tasker agregue al nombre del archivo la fecha cuando fue creado el backup.
- ¿Por qué ofreces la posibilidad de modificar la extención del archivo contenedor a 3 posibilidades?
-> En un principio pensé que no sería posible y que se producirían fallos o algo parecido, pero al probarlo, como no pasaba nada pues ofrezco a los usuarios la posibilidad de generar los contenedores a corde a sus gustos. Y como el archivo final (.gz) tras la compresión, es posible abrirlo fácilmente, pues... CORREGIDME SI ME EQUIVOCO EN LO QUE IDEADO
- ¿Por qué usas las comillas en algunas partes del código que hacen referencia a un directorio a comprimir, o a volcar el contenido creado (mover)?
-> En realidad no haría falta, bueno al menos eso he experimentado yo. Pero las he agregado porque en mi caso tengo carpetas en las que sus nombre tienen espacios, y sin agregar esas comillas ("...") no me detecta el directorio al cual deseo acceder, he imagino que le puede pasar a otr@.
- Cuando empiezas a usar el comando de crear archivo en contenedor, al igual que el de mover archivo, ¿por qué te posicionas primero en el directorio y luego haces la acción, en vez de incluir todo en el mismo código?
-> Es lo que he intentado hasta ahora, pero no sé porque no he podido. Cada combinación que probada fallaba, entonces me decidi por separar los comandos de posicionamiento en directorio, de los que llevan las acciones de compresión, mover archivos, etc.
Y bueno, el resto imagino que os hareis una idea de que se trata o como funciona. Sino preguntad.
Sergio Yinyang
25/10/16, 15:49:00
Parece que con rm -r *.* borras los archivos comprimidos creados previamente
Sergio Yinyang
25/10/16, 15:51:43
A no, perdón que cambias antes a ###
SmartPhoneLover
25/10/16, 16:15:46
'Sergio Yinyang', efectivamente, antes me coloco en el directori anterior. Y borro archivos normales, como ocultos.
vBulletin® v3.8.1, Copyright ©2000-2025, Jelsoft Enterprises Ltd.