![]() |
|
|
google unix.com
|
|||||||
| Foros | Registro | Reglas de los Foros | Enlaces | Álbumes | Preguntas más frecuentes | Lista de miembros | Calendario | Búsqueda | Puestos de hoy | Marcar Foros Como Leídos |
| Programación de scripts de shell y Plantear preguntas sobre KSH, CSH, SH, BASH, PERL, PHP, SED, AWK y otros scripts de shell y lenguajes de script de shell aquí. |
Más UNIX y Linux Foro Temas usted puede encontrar útiles
|
||||
| Hilo | Hilo para principiantes | Foro | Respuestas | Último mensaje |
| crontab no ha podido ejecutar a través de, la ayuda | duke0001 | UNIX para usuarios avanzados y expertos | 10 | 02-06-2008 03:22 AM |
| Uso de Crontab | sumesh.abraham | Programación de scripts de shell y | 10 | 02-21-2007 06:19 AM |
| crontab | ss4u | UNIX for Dummies Preguntas y Respuestas | 2 | 02-20-2007 10:33 AM |
| ayuda con crontab | bob122480 | Programación de scripts de shell y | 3 | 01-22-2007 08:49 PM |
| Necesita ayuda en crontab? | J_ang | Programación de scripts de shell y | 3 | 07-22-2006 02:46 PM |
![]() |
|
|
Linkback vínculo | Herramientas de hilo | Buscar en este Hilo | Tasa de Hilo | Modos de visualización |
|
|
|
||||
|
Cron lamentablemente no es muy flexible en ese sentido. ¿Su necesidad de ejecutar scripts exactamente cada 15 días, o puede que acaba de correr en la 1 ª y 16 de cada mes, es decir, aproximadamente cada 15 días? En caso contrario, podría tener que ejecute el trabajo cada día, y añadir cierta lógica a fin de que se sale sin hacer nada si el número actual de días desde el 1ro de enero 1970 no es uniformemente divisible por 15: Código:
days_since_epoch=$(perl -e 'print int(time/86400)"\n";')
if [[ "$(( $days_since_epoch % 15 ))" -ne 0 ]]
then
exit
else
# do your stuff
fi
Última edición por Annihilannic; al 10-13-2008 02:19 AM.. Motivo: duplicado eliminado el módulo de cálculo. |
|
|||||
|
sí ha script para ejecutarse cada 15 días. Rans si hoy 13 de octubre, es decir, el próximo será el 28 de octubre y de nuevo 0n 13 de noviembre.
Me han dado por debajo de la secuencia de comandos de información, u puede decirme la manera de aplicar la lógica de esta fecha dentro de mi script -------------------------------------------------- ----------------------- #! / bin / ksh cd / var / preservar count \u003d 0 count \u003d `ls-LTR | grep ^ - | grep 'tubo' | wc-l» if [$ count-eq 0] entonces echo "0 archivos son propiedad de la tubería" algo más echo "total de los archivos propiedad de la tubería es de $ contar" ls-LTR | grep 'tubo' | xargs rm-f -- echo "Todos los archivos se borran tubería" fi -------------------------------------------------- ----------------------- Sé de un comando que le dará a la fecha después de 15 días, pero no recibe la lógica para su aplicación dentro de la secuencia de comandos TZ \u003d `date +% -360 Z»; a \u003d `date +% Y-% m-% d `--------> 2008-10-28 |
|
||||
|
Sólo cambia el inicio como este. Hoy es 14.165 días desde la época, y 14165% 15 \u003d 5. Eso significa que este script se ejecuta hoy en día, y en 15 días, 30 días, 45, etc Código:
#!/bin/ksh
days_since_epoch=$(perl -e 'print int(time/86400);')
if [[ "$(( $days_since_epoch % 15 ))" -ne 5 ]]
then
exit
fi
...
|
|
||||
|
Piénsalo ... no hay necesidad real de la otra parte ... si no es el día que usted desea, él va a salir ... si * es * el día que desea, el script sólo continuar y ejecutar el resto de su código.
Usted puede ponerlo en una cláusula de otra si lo desea, pero el resultado es el mismo. |
![]() |
| Marcadores |
| Herramientas de hilo | Buscar en este Hilo |
| Modos de visualización | Vota a este hilo |
|
|