Skip to main content

Visualizza le pianificazioni cron.

minuto ora giorno mese giorno-settimana
ogni minuto
Prossime esecuzioni
9/6/2026, 1:27:00 PM
9/6/2026, 1:28:00 PM
9/6/2026, 1:29:00 PM
9/6/2026, 1:30:00 PM
9/6/2026, 1:31:00 PM
Tutti i calcoli sono eseguiti localmente nel tuo browser. Nessun dato viene inviato al server.

I risultati hanno carattere informativo. Verificali con altre fonti.

Leggere un'espressione cron

Un'espressione cron è formata da cinque campi separati da spazi, letti da sinistra: minuto, ora, giorno del mese, mese, giorno della settimana. Quasi ogni errore con cron è un campo nella posizione sbagliata oppure un fraintendimento su come interagiscono i due campi dei giorni.

Come funziona

  • Analizza i cinque campi, descrive ciascuno a parole ed elenca le prossime esecuzioni.
  • Gestisce gli operatori standard: * per ogni valore, */n per uno ogni n, a-b per gli intervalli e a,b,c per gli elenchi.
  • Interpreta l'espressione nel fuso del tuo browser, che non è necessariamente quello del tuo server.
┌───────── minuto            (0–59)
│ ┌─────── ora               (0–23)
│ │ ┌───── giorno del mese   (1–31)
│ │ │ ┌─── mese              (1–12)
│ │ │ │ ┌─ giorno settimana  (0–6, domenica = 0)
│ │ │ │ │
* * * * *

Esempio pratico

Decodifica di 30 2 * * 1-5, una pianificazione che inganna proprio per i due campi dei giorni.

  1. minuto = 30
  2. ora = 2
  3. giorno del mese = * (ogni giorno)
  4. mese = * (ogni mese)
  5. giorno della settimana = 1-5 (da lunedì a venerdì)

Viene eseguito alle 02:30 di ogni giorno feriale. Nota che qui il giorno del mese è *: se ci fosse stato un numero preciso, cron sarebbe scattato quando corrispondeva uno qualsiasi dei due campi dei giorni, non entrambi. È la sorpresa più comune di cron.

Come leggere il risultato

  • Quando giorno del mese e giorno della settimana sono entrambi vincolati, cron usa OR, non AND. 0 0 1 * 1 viene eseguito il 1° del mese E ogni lunedì, non solo nei lunedì che cadono il 1°.
  • Cron usa il fuso del server salvo diversa configurazione, e gran parte dei crontab gestisce male il cambio dell'ora. Un job previsto alle 02:30 può essere eseguito due volte o nessuna nella notte del cambio.
  • Non esiste un «ogni 90 minuti». I passi dividono il campo, quindi */90 nel campo dei minuti non è valido: scrivilo come due voci oppure sposta la logica dell'intervallo dentro il job.
  • Alcune implementazioni antepongono un sesto campo dei secondi, e Quartz ne usa sette con l'anno. Verifica quale dialetto parla il tuo scheduler prima di copiare un'espressione trovata altrove.

Domande frequenti

Perché il mio job parte più spesso del previsto?
Di solito per il comportamento OR tra giorno del mese e giorno della settimana, oppure per un passo applicato al campo sbagliato. Rileggere l'espressione a parole, come fa questo strumento, individua rapidamente entrambi i casi.
Come pianifico qualcosa per l'ultimo giorno del mese?
Il cron standard non sa esprimerlo. La soluzione tipica è eseguire ogni giorno e far terminare subito il job se domani non è il 1°. Alcuni dialetti aggiungono un carattere L a questo scopo.