Interprete di Espressioni Cron - in parole semplici
Interprete di espressioni cron
Cinque campi: minuto, ora, giorno del mese, mese, giorno della settimana.
Campo per campo
| Campo | Scritto | Significa |
|---|
Prossime esecuzioni
| # | Viene eseguito |
|---|
Gli orari sono nel fuso del tuo dispositivo. Il server che esegue il job può essere in un altro.
Cosa fa questo strumento
La sintassi cron è compatta e facile da fraintendere, e il prezzo di un fraintendimento è un job che gira all’ora sbagliata per mesi prima che qualcuno se ne accorga. Questa pagina ritraduce la riga in una frase e, cosa più utile, mostra le date reali di esecuzione.
Come si usa
- 1 Incolla la tua riga cron o parti da uno degli esempi.
- 2 Leggi la frase e controlla ogni campo uno per uno.
- 3 Verificalo con l’elenco delle prossime esecuzioni: è lì che gli errori si vedono.
I cinque campi
Sempre in quest’ordine, sempre separati da spazi. Ognuno accetta un numero, una lista come 1,15, un intervallo come 9-17, un passo come */5 o un asterisco che significa ogni valore.
| # | Campo | Ammesso | Nota |
|---|---|---|---|
| 1 | Minuto | 0-59 | — |
| 2 | Ora | 0-23 | — |
| 3 | Giorno del mese | 1-31 | Vedi la regola dei giorni sotto |
| 4 | Mese | 1-12 | Accettati anche JAN-DEC |
| 5 | Giorno della settimana | 0-7 | 0 e 7 sono entrambi domenica; accettati SUN-SAT |
La trappola del giorno del mese
Quando sia il campo del giorno del mese sia quello del giorno della settimana valgono qualcosa di diverso da un asterisco, cron esegue il job se corrisponde uno dei due, non entrambi. Così «0 0 1 * MON» parte il 1° di ogni mese e ogni lunedì. La prima volta sorprende quasi tutti, e l’interprete lo segnala quando accade.
I passi non significano «ogni N da adesso»
*/20 nel campo dei minuti significa i minuti 0, 20 e 40 di ogni ora, non «venti minuti dopo l’ultima esecuzione». Se un’esecuzione dura 25 minuti, la successiva parte comunque al minuto 40. I passi contano dall’inizio dell’intervallo, e 5-20/5 conta da 5.
Fusi orari e le ore che spariscono
Cron segue l’orologio del server, non il tuo, quindi un job impostato alle 02:30 può partire a un’ora locale diversa da quella che immagini. Peggio: nelle regioni con ora legale quell’ora non esiste in una notte all’anno e capita due volte in un’altra. Per ciò che non deve essere saltato né ripetuto, programmalo lontano dalle 01:00-03:00.