CRON
Intérprete de expresiones
del mes
de la semana
| Nombre | Obligatorio | Permitido valores | Permitido caracteres especiales |
|---|---|---|---|
segundos | Sí | 0-59 | , - * / |
minutos | Sí | 0-59 | , - * / |
horas | Sí | 0-23 | , - * / |
días del mes | Sí | 1-31 | , - * ? / L W |
meses | Sí | 1-12 o JAN-DEC | , - * / |
días de la semana | Sí | 1-7 o SUN-SAT 1 = domingo, 7 = sábado | , - * ? / L # |
años | No | vacío o 1970-2099 | , - * / |
| Signo | Explicación |
|---|---|
, | Separa valores consecutivos. |
- | Especifica un rango de-a. |
* | Todos los valores del campo; por ejemplo, en el campo de la hora significa 'cada hora'. |
? | Útil cuando es necesario especificar un valor en uno de dos campos en los que el carácter está permitido, pero no en el otro. Por ejemplo, si quiero que el disparador se ejecute el día 5 del mes pero no me importa qué día de la semana sea, pondré '5' en el campo del día del mes y '?' en el campo del día de la semana. En este dialecto, exactamente uno de los campos día del mes y día de la semana debe ser '?': poner un valor en ambos, o '*' en ambos, se rechaza. |
/ | Se utiliza para especificar pasos. El primer valor indica cuándo comienza el paso y el segundo indica con qué frecuencia se ejecutará, por ejemplo, '0/15' en el campo de los minutos significa los minutos 0, 15, 30, 45, mientras que '5/15' significa la ejecución en los minutos 5, 20, 35 y 50. |
# | La almohadilla '#' se utiliza para especificar el día 'enésimo' del mes; por ejemplo, el valor '4#3' en el campo del día de la semana significa el tercer miércoles del mes (día 4 = miércoles y #3 = tercer miércoles del mes). |
L | La letra 'L' significa 'último' en los campos del día de la semana o del día del mes. Por ejemplo, '0 0 9 ? * 3L' significa el último martes de cada mes a las 9 de la mañana. En el campo del día del mes también se puede especificar 'LW', que significa el último día hábil del mes. Usada sola en el campo del día de la semana (solo 'L', sin día delante), significa sábado (día 7), no 'el último día de la semana'. |
W | Especifica el día hábil (de lunes a viernes) más cercano al día del mes indicado. Por ejemplo, '1W' significa 'el día hábil más cercano al día 1 del mes'. Si el día 1 cae en domingo, el cron se ejecutará el lunes, día 2 del mes. |
| Expresión | Descripción |
|---|---|
0 0 12 * * ? | Ejecutar todos los días a las 12:00. |
0 0/20 * * * ? | Ejecutar cada 20 minutos, en los minutos 0, 20, 40. |
0 15 10 * * ? 2023 | Ejecutar a las 10:15 todos los días del año 2023. |
* 30 3 ? * 1,7 | Ejecutar cada segundo a las 3:30 el sábado y el domingo. |
| Esta herramienta (Quartz) | Spring CronExpression | Cron clásico de Unix | |
|---|---|---|---|
Número de campos | 6 o 7 | 6 | 5, sin segundos |
'?' en día del mes / día de la semana | obligatorio en exactamente un campo | opcional, actúa como '*' | no admitido |
Día del mes y día de la semana juntos | rechazado | permitido: ambos deben coincidir (Y) | permitido: basta con uno (O) |
Numeración de los días de la semana | 1 = domingo … 7 = sábado | 0 o 7 = domingo, 1 = lunes | 0 o 7 = domingo, 1 = lunes |