Entrada de Crontab con rango de horas que pasa de medianoche

18

¿Es esta la especificación de tiempo crontab válida, haciendo lo que se espera:

0 22-4 * * *

¿O es necesario hacer algo como

0 22,23,0,1,2,3,4 * * *
Hyde
fuente

Respuestas:

5

Nunca he intentado usar un rango como ese, y no estoy seguro de si funcionaría. Entonces, mi primer consejo sería probarlo y ver qué sucede, aunque probablemente con un script que solo hace una entrada de registro o algo más inocuo.

En segundo lugar, para el cron ATT y BSD no puede tener rangos y listas coexistentes, por lo que deberá enumerar cada hora por separado o tener dos líneas, una con el rango y otra con la lista.

Jenny D
fuente
Pregunta modificada para ser válida en ATT / BSD por su respuesta. De hecho, estoy escribiendo "mi" especificación de crontab en la configuración de trabajo de Jenkins (y lo probaré esta noche con un trabajo ficticio), pero estoy preguntando aquí para saber qué comportamiento se espera en el sistema Unix / Linux.
hyde
En realidad, esperaría que no funcionara y me sorprendería gratamente si lo hiciera. Pero también esperaría que cron se quejara si ingresa un rango no válido.
Jenny D
12

Tuve problemas para ejecutar cronjobs durante la medianoche. Terminé poniendo dos entradas casi idénticas para los guiones involucrados.

* 22-00 * * * /myscript
* 00-05 * * * /myscript

eso parecía hacer el truco.
Estaba experimentando fallas cron debido al uso de 22-05, y por proceso de eliminación se me ocurrió esta solución.

usuario73420
fuente
Solo una nota, parece que no funciona */5, es decir:*/5 00-05 * * * /myscript
dentex
8

Existe una amplia gama de demonios cron, a menos que usted indique cuál está utilizando exactamente (el manejo de listas en tales casos de esquina podría cambiar de una versión a la siguiente) no puede haber una respuesta. La mejor apuesta es ir con tu lista explícita. No me sorprendería demasiado si alguna implementación toma tu respuesta como una forma extraña de decir 4-22...

¿Su documentación local incluso menciona este tipo de casos? Tal vez es legal tener dos listas, por ejemplo 22-24,1-4?

vonbrand
fuente
8
Puedo confirmar que 22-23,0-4(tenga en cuenta que crontab no 24funciona) funciona perfectamente, al menos en los centos en los que lo probé.
qwertyboy