Skip to main content
CheckTown
Dev Tools

Parser di espressioni Cron: Pianifica le attività come un professionista

Pubblicato 5 min di lettura
In questo articolo

Cos'è un'espressione cron?

Un'espressione cron è una stringa che definisce una pianificazione per task ricorrenti. Originariamente proveniente dai sistemi Unix, la sintassi cron è ora utilizzata nei cloud scheduler (AWS EventBridge, GCP Cloud Scheduler), nei sistemi CI/CD (GitHub Actions, Jenkins) e nei framework applicativi per definire quando i job devono essere eseguiti automaticamente.

Un'espressione cron standard ha 5 campi: minuto (0-59), ora (0-23), giorno del mese (1-31), mese (1-12) e giorno della settimana (0-6). I formati estesi aggiungono un campo per i secondi all'inizio o un campo per l'anno alla fine.

Come funziona il parsing cron

Il parser cron di CheckTown decodifica l'espressione e mostra esattamente quando verrà eseguita.

  • Parsing dei campi — scompone ogni campo e ne valida l'intervallo e i caratteri speciali
  • Descrizione in linguaggio naturale — converte l'espressione in italiano semplice (es. 0 9 * * 1 → Ogni lunedì alle 9:00)
  • Prossime esecuzioni — mostra i prossimi 5-10 orari di esecuzione pianificati in base all'espressione

Prova gratuitamente — nessuna registrazione richiesta

Analizza un'espressione cron →

Quando usare il parser cron

Il parser cron è utile ogni volta che devi creare, leggere o fare il debug di configurazioni per task pianificati.

  • Job pianificati — verifica le espressioni cron per backup di database, generazione di report o task di pulizia
  • Cloud scheduling — valida le regole cron di EventBridge o Cloud Scheduler prima del deploy
  • Pianificazioni di guardia — verifica che gli alert di monitoraggio o le finestre di manutenzione siano pianificate correttamente

Domande frequenti

Cosa significa * in cron?

Un asterisco (*) significa 'ogni valore valido' per quel campo. Quindi * nel campo dei minuti significa 'ogni minuto', * nel campo delle ore significa 'ogni ora', ecc. L'espressione * * * * * significa 'esegui ogni minuto di ogni ora di ogni giorno'.

Qual è la differenza tra cron a 5 e a 6 campi?

Il cron Unix tradizionale usa 5 campi (minuto, ora, giorno del mese, mese, giorno della settimana). Molti sistemi moderni aggiungono un 6° campo per i secondi all'inizio, ottenendo (secondo, minuto, ora, giorno del mese, mese, giorno della settimana). AWS e GCP usano espressioni a 6 campi. Verifica sempre il formato atteso dal tuo scheduler.

Posso usare sia giorno-del-mese che giorno-della-settimana nella stessa espressione?

Nella maggior parte delle implementazioni cron, l'uso di valori specifici sia in giorno-del-mese che in giorno-della-settimana crea una condizione OR: il job viene eseguito se è soddisfatta una delle due condizioni. Questo comportamento è spesso poco intuitivo. Se hai bisogno che un job venga eseguito in un giorno specifico della settimana di una data precisa, usa un'espressione più specifica o inserisci la logica condizionale direttamente nel job.

Strumenti correlati