Cos'è un'espressione cron?
Pubblicato il 28/07/2025 · 3 min di lettura · Strumenti per sviluppatori
Daniel Okonkwo — Sviluppatore front-end e redattore Tech presso Allin
Performance web · Formati di file
Verificato su 2 fonti
Un'espressione cron è una breve stringa che pianifica l'esecuzione automatica di un'attività a orari fissati, usata dallo strumento cron di Unix e da molte app. Ha cinque campi — minuto, ora, giorno del mese, mese, giorno della settimana — così '0 9 * * 1' significa le 9:00 ogni lunedì. Un asterisco significa 'ogni'. È così che i server eseguono backup, report e pulizie secondo un programma.
Un'espressione cron pianifica l'esecuzione automatica di un'attività a orari fissati. Ecco a cosa serve, i suoi cinque campi, come leggerla, e i tranelli comuni.
A cosa serve cron
Cron è lo scheduler classico dei sistemi Unix e Linux, e la stessa idea appare ora ovunque nei servizi cloud e nei framework delle app. Il suo compito è eseguire un'attività automaticamente a orari ricorrenti senza che nessuno prema un pulsante — backup notturni del database, un report inviato ogni lunedì, file temporanei puliti ogni ora. Invece di ricordarti queste incombenze, descrivi quando devono accadere in un'espressione cron, e lo scheduler pensa al resto.
I cinque campi
Un'espressione cron standard sono cinque valori separati da spazi, in un ordine fisso: minuto (0–59), ora (0–23), giorno del mese (1–31), mese (1–12) e giorno della settimana (0–6, dove 0 è domenica). Ogni campo dice quando, entro il suo intervallo, l'attività deve attivarsi. Leggendo da sinistra a destra, vai dalla più piccola unità di tempo alla più grande e poi al giorno della settimana — una volta noto l'ordine, ogni espressione diventa leggibile.
Leggere un'espressione
Oltre ai semplici numeri, alcuni simboli fanno il lavoro pesante. Un asterisco significa 'ogni' valore di quel campo. Un numero significa esattamente quel valore. Una barra imposta un passo, quindi */15 nel campo minuto significa 'ogni 15 minuti'. Una virgola elenca più valori, un trattino dà un intervallo. Insieme, '0 9 * * 1' si legge: minuto 0, ora 9, qualsiasi giorno del mese, qualsiasi mese, di lunedì — cioè le 9:00 ogni lunedì. Decodifica campo per campo e tutto va a posto.
Pattern comuni e tranelli
Alcuni pattern coprono la maggior parte dei bisogni: '*/15 * * * *' gira ogni 15 minuti, '0 0 * * *' ogni giorno a mezzanotte, '0 9 * * 1-5' alle 9:00 nei giorni feriali. Due cose ingannano. Quando i campi giorno-del-mese e giorno-della-settimana sono entrambi impostati, la maggior parte delle implementazioni esegue l'attività se uno dei due coincide, non entrambi — una sorpresa frequente. E cron usa l'orologio del server, quindi controlla il fuso orario, o un'attività di 'mezzanotte' può scattare all'ora sbagliata. Nel dubbio, prova l'espressione contro un'anteprima del programma prima di fidarti.
Domande frequenti
- Cos'è un'espressione cron?
- Una stringa di campi che dice a uno scheduler quando eseguire un'attività automaticamente.
- Cosa significa '0 9 * * 1'?
- Eseguire alle 9:00 ogni lunedì.
- Cosa significa l'asterisco in cron?
- 'Ogni' — ogni minuto, ora, giorno, ecc., per quel campo.
Articoli che potrebbero interessarti
Tutte le guide →Strumenti correlati
Fonti
Hai notato un errore in questo articolo?