Riassunto
Questo generatore di espressioni cron costruisce e verifica pianificazioni cron standard a cinque campi, direttamente nel browser. Scegli un preset o modifica minuti, ore, giorno del mese, mese e giorno della settimana. Lo strumento spiega la pianificazione in parole semplici, mostra ogni campo nel dettaglio ed elenca le prossime cinque esecuzioni in UTC o nel tuo fuso orario. Segue la regola cron standard per combinare giorno del mese e giorno della settimana. Nulla viene inviato a un server e non serve registrarsi.
Generatore espressioni cron: crea e controlla le pianificazioni in pochi secondi
Scegli un preset o scrivi i cinque campi. Ottieni la spiegazione in linguaggio semplice, la scomposizione campo per campo e le prossime cinque esecuzioni, tutto calcolato in locale.
Cosa fa lo strumento con i tuoi cinque campi
Analizza ogni campo da solo
Ogni campo accetta un valore singolo, una lista (1,15), un intervallo (1-5), un passo (*/10) o una combinazione. I nomi di mese e giorno come JAN o MON-FRI funzionano. I valori fuori range e gli intervalli al contrario vengono segnalati sul campo esatto che è sbagliato.
Applica la vera regola di corrispondenza di cron
Un orario corrisponde quando minuti, ore e mesi sono nelle tue liste e il test sul giorno passa. Se giorno del mese e giorno della settimana sono entrambi limitati, cron accetta l'uno o l'altro. Se uno dei due inizia con un asterisco, devono corrispondere entrambi.
Scorre il calendario per elencare le esecuzioni future
Partendo dal minuto corrente, lo script scorre i giorni, tiene quelli che passano il test sul giorno, poi elenca ore e minuti corrispondenti in ordine. Guarda fino a otto anni avanti, abbastanza per trovare una pianificazione del 29 febbraio.
I cinque campi, nell'ordine in cui cron li legge
Una riga cron è composta da cinque campi separati da spazi, seguiti dal comando. L'ordine non cambia mai: minuti, ore, giorno del mese, mese, giorno della settimana. La maggior parte degli errori nasce dallo scambio dei primi due, così una pianificazione pensata per le 14 finisce per girare al minuto 14 di ogni ora. Leggi da sinistra a destra e ripeti ad alta voce i campi prima di salvare.
- Minuti: 0-59
- Ore: 0-23, con orologio a 24 ore
- Giorno del mese: 1-31
- Mese: 1-12 o JAN-DEC
- Giorno della settimana: 0-7 o SUN-SAT, dove 0 e 7 indicano entrambi la domenica
- Simboli: * per ogni valore, , per una lista, - per un intervallo, / per un passo
Le trappole di cron che fanno perdere un weekend
L'ambiente è quasi vuoto
Cron avvia i job con un PATH minimo e senza profilo della shell. Uno script che funziona nel tuo terminale può fallire in silenzio da cron. Usa percorsi assoluti per il comando e per ogni file che legge, e reindirizza l'output su un file di log così vedi gli errori.
Un simbolo di percentuale chiude il comando
In una riga di crontab, un % non escapato viene trattato come un a capo, e tutto ciò che segue viene inviato al comando come input. I formati di data come date +%F richiedono ogni percentuale preceduta da una barra rovesciata. Metti il comando in uno script e il problema sparisce.
Ogni minuto raramente è quello che vuoi
Un job che gira ogni minuto e impiega 90 secondi si sovrappone a se stesso. Proteggi i job lunghi con un lock, oppure spostali su una coda. Se ti basta ogni pochi minuti, un passo come */5 è più leggero e meno pesante per ciò che il job chiama.
Il fuso orario non è il tuo
Un crontab usa il fuso orario del server. Gli scheduler gestiti di solito usano UTC. Un job impostato alle 09:00 può partire alle 17:00 a Taipei o alle 04:00 a Bangkok, a seconda di dove si trova la macchina. Scrivi il fuso orario in un commento accanto alla riga.
Giorno della settimana e giorno del mese si combinano con OR
Limitare entrambi i campi non restringe la pianificazione, la allarga. Se vuoi il primo lunedì del mese, nessuna espressione a cinque campi può dirlo direttamente. Fai girare il job ogni lunedì e lascia che lo script verifichi che la data sia 7 o inferiore.
Testa la pianificazione prima del job
Controlla prima qui le prossime cinque esecuzioni, poi lancia il comando a mano con lo stesso ambiente. Due piccoli controlli valgono più del debug di un backup notturno che non è mai partito. Inizia con un comando innocuo, come scrivere la data in un file.
Domande sulle espressioni cron
Questo generatore di espressioni cron è gratuito e invia la mia pianificazione da qualche parte?
Quanti campi ha un'espressione cron?
Perché il mio job gira in giorni che non mi aspettavo quando imposto sia giorno del mese sia giorno della settimana?
Quale fuso orario usano gli orari delle esecuzioni?
La stessa espressione funziona in GitHub Actions, Kubernetes e crontab?
Cosa significa un passo come */15 o 10/20?
Posso usare nomi come MON-FRI o JAN?
Cosa succede con il cambio dell'ora legale?
Cerchi la prossima cosa da costruire?
Un job cron è un buon primo backend per un side project. Il generatore gratuito sulla home ti dà una specifica di progetto completa, con stack e perimetro, con un clic.