2010-09-08 19 views

Respuesta

20

pregunta original fue etiquetado cron por lo que esta primera sección se aplica a eso. Vea a continuación una respuesta actualizada para la herramienta Quartz CronTrigger.


mayoría crontabs no le permiten especificar el año, por lo que probablemente tendrá que poner esto en el propio guión (o una envoltura alrededor de la secuencia de comandos/programa).

Usted puede hacer esto con algo como:

if [[ $(date +%Y) != 2010 ]] ; then 
    exit 
fi 

La opción que está buscando para funcionar a las 6 am el 6 de septiembre cada años es

0 6 6 9 * your_command_goes_here 
| | | | | 
| | | | +- any day of the week. 
| | | +--- 9th month (September). 
| | +----- 6th day of the month. 
| +------- 6th hour of the day. 
+--------- Top of the hour (minutes = 0). 

Para el El formato CronTrigger de Quartz, estarías buscando algo como:

0 0 6 6 9 ? 2010 
| | | | | | | 
| | | | | | +- 2010 only. 
| | | | | +----- any day of the week. 
| | | | +------- 9th month (September). 
| | | +--------- 6th day of the month. 
| | +----------- 6th hour of the day. 
| +------------- Top of the hour (minutes = 0). 
+--------------- Top of the minute (seconds = 0). 

(detalles recogidos de here).

+0

pueden agradar a explicar con cada campo –

+0

Hay ya go, @ NewBie. – paxdiablo

+0

desde http://www.quartz-scheduler.org/docs/tutorials/crontrigger.html También debemos mencionar hora, minuto y segundo –

1

Podría ser sólo en/etc/crontab sigue:

0 6 6 9 * root test `/bin/date +%Y` == 2010 && <your command> 
Cuestiones relacionadas