Ingresso Crontab con intervallo di ore che va oltre la mezzanotte


18

Questa specifica del tempo crontab è valida, facendo ciò che è previsto:

0 22-4 * * *

O è necessario fare qualcosa del genere

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

Risposte:


5

Non ho mai provato a usare una gamma come quella, e non sono sicuro che funzionerebbe. Quindi il mio primo consiglio sarebbe quello di testarlo e vedere cosa succede, anche se probabilmente con uno script che fa solo una voce di registro o qualcos'altro di innocuo.

In secondo luogo, per ATT e BSD cron non è possibile avere intervalli ed elenchi coesistenti, quindi è necessario elencare ogni ora separatamente o disporre di due righe, una con l'intervallo e una con l'elenco.


Domanda modificata per essere valida su ATT / BSD dalla tua risposta. In realtà sto scrivendo la "mia" specifica di crontab nella configurazione del lavoro Jenkins (e lo testerò stasera con un lavoro fittizio), ma sto chiedendo qui di sapere quale è il comportamento previsto sul sistema Unix / Linux.
hyde,

In realtà mi aspetterei che non funzionasse e sarei piacevolmente sorpreso se lo facesse. Ma mi aspetto anche che cron si lamenti se inserisci un intervallo non valido.
Jenny D

12

Ho avuto problemi con i cronjobs a mezzanotte. Ho finito per inserire due voci quasi identiche per gli script coinvolti.

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

quello sembrava fare il trucco.
Stavo riscontrando errori cron a causa dell'utilizzo del 22-05 e con il processo di eliminazione mi è venuta in mente questa soluzione.


Solo una nota, a quanto pare non funziona */5, vale a dire:*/5 00-05 * * * /myscript
dentex

8

Ci sono molti demoni cron in giro, a meno che tu non dica quale esatto stai usando (la gestione degli elenchi in questi casi angolari potrebbe benissimo cambiare da una versione all'altra) non ci può essere una risposta. La migliore scommessa è andare con il tuo elenco esplicito. Non sarei troppo sorpreso se un po 'di implementazione prende il tuo avvolgente come un modo strano di dire 4-22...

La tua documentazione locale menziona anche questo tipo di caso? Forse è legale avere due elenchi, ad esempio 22-24,1-4?


8
Posso confermare che 22-23,0-4(nota che crontab non 24funziona) funziona perfettamente, almeno sui centos su cui l'ho provato.
qwertyboy,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.