Ejecute el trabajo Cron cada N minutos más el desplazamiento

Resuelto AJP asked hace 12 años • 3 respuestas

*/20 * * * *

Garantiza que se ejecute cada 20 minutos. Me gustaría ejecutar una tarea cada 20 minutos, comenzando a las 5 en punto, ¿es esto posible con Cron? Podría ser:

5/20 * * * * ?

AJP avatar Oct 09 '12 00:10 AJP
Aceptado

Para ejecutar una tarea cada 20 minutos a partir de las 5 en punto, intente esto:

 5-59/20 * * * *

Explicación

Un *campo en el minuto es lo mismo que 0-59/1donde 0-59está el rango y 1el paso . El comando se ejecutará en el primer minuto en el rango (0), luego en todos los minutos sucesivos que estén alejados del primero por el paso (1), hasta el último (59).

Es por eso que */20 * * * *se ejecutará a los 0 minutos, 20 minutos después y 40 minutos después, que es lo mismo que cada 20 minutos. Sin embargo, */25 * * * *se ejecutará a los 0 minutos, 25 minutos después y 50 minutos después, lo que no es lo mismo que cada 25 minutos. Por eso suele ser conveniente utilizar un valor de paso en el campo de minutos que se divida uniformemente entre 60.

Entonces, para compensar la hora de inicio, especifique el rango explícitamente y establezca el primer valor en la cantidad del desplazamiento.

Ejemplos

5-59/20 * * * *se ejecutará 5 minutos después, 25 minutos después y 45 minutos después.

10-59/25 * * * *se ejecutará 10 minutos después y 35 minutos después.

1-59/2 * * * *se ejecutará cada minuto impar.

toxalot avatar Oct 06 '2013 02:10 toxalot

¡Seguro!

5,25,45 * * * * /your/cron
fedorqui avatar Feb 25 '2013 17:02 fedorqui

Puedes probar:*/5 * * * * sleep N; your job

Leo Chu avatar Nov 12 '2013 02:11 Leo Chu