Generatore di espressioni Cron
Crea e spiega le espressioni Cron più comuni.
Come si usa
Un’espressione Cron standard ha cinque campi separati da spazi, in questo ordine: minuto (0–59), ora (0–23), giorno del mese (1–31), mese (1–12) e giorno della settimana (0–7, dove sia 0 sia 7 indicano la domenica). Scegli un’espressione predefinita o digitane una: «Spiega» la controlla e mostra in una tabella il significato di ogni campo.
Ogni campo accetta * per ogni valore, un singolo numero, un intervallo come 1-5, un elenco come 1,15 e un passo come */15 o 0-30/10. I passi si contano dall’inizio dell’intervallo, quindi */15 nel campo dei minuti indica i minuti 0, 15, 30 e 45, e */7 nel campo del giorno del mese indica i giorni 1, 8, 15, 22 e 29, ricominciando ogni mese.
Quando sia il giorno del mese sia il giorno della settimana sono impostati su un valore diverso da *, il Cron standard esegue il job quando corrisponde uno dei due, non solo quando corrispondono entrambi. 0 9 13 * 5 viene eseguito alle 09:00 di ogni 13 del mese e di ogni venerdì, non solo di venerdì 13.
Cron usa il fuso orario della macchina o del servizio che lo esegue. Molti scheduler in hosting usano UTC per impostazione predefinita (GitHub Actions lo fa, a meno che la pianificazione non indichi un fuso orario), quindi 0 9 * * * scatta alle 10:00 o alle 11:00 a Parigi o a Berlino, e alle 09:00 o alle 10:00 a Lisbona o a Londra. In corrispondenza dei cambi dell’ora legale, un job pianificato nell’ora che viene saltata o ripetuta potrebbe non essere eseguito, o essere eseguito due volte, a seconda dell’implementazione.
Questo strumento controlla il formato numerico portabile. Non accetta nomi di mesi o di giorni (JAN, MON), né i caratteri speciali L, W, # e ?, né scorciatoie come @daily, né un campo per i secondi o per l’anno, e non elenca le prossime esecuzioni. Consulta la documentazione del tuo scheduler per sapere che cosa aggiunge.
Esempio
*/15 * * * * significa ogni 15 minuti. Il pianificatore determina il fuso orario; questo strumento non pianifica attività.
0 9 * * *Ogni giorno alle 09:00.0 9 * * 1-5Dal lunedì al venerdì alle 09:00.*/15 * * * *Ogni 15 minuti: ai minuti 0, 15, 30 e 45 di ogni ora.0 0 1 * *A mezzanotte del primo giorno di ogni mese.30 18 * * 0,6Alle 18:30 il sabato e la domenica.
Domande frequenti
Supporta Cron a sei campi con i secondi?
No. Lo strumento usa il formato portabile a cinque campi. Alcune piattaforme, come Quartz e Spring, mettono un campo per i secondi all’inizio, e altre aggiungono un anno alla fine.
Posso usare nomi come MON o JAN?
No. Usa valori numerici: 0–7 per i giorni della settimana e 1–12 per i mesi.
Come eseguo un job l’ultimo giorno del mese?
Il Cron standard a cinque campi non può esprimerlo direttamente. Le soluzioni più comuni sono eseguirlo nei giorni 28–31 lasciando che il job controlli se domani è il giorno 1, oppure usare uno scheduler che supporti L.
Perché il mio job è stato eseguito all’ora sbagliata?
Di solito perché lo scheduler usa UTC o un fuso orario diverso dal tuo. Converti l’ora, oppure imposta il fuso orario dello scheduler, se lo consente.