TanodTools
IT

Generatore di espressioni cron

Costruisci una pianificazione crontab da semplici scelte, poi controlla cosa dice in parole semplici e quando verrà eseguita la prossima volta.

Funziona interamente nel tuo browser

Espressione cron

* * * * *

Incolla un'espressione a cinque campi o una scorciatoia come @daily.

Prossime esecuzioni

Lascia vuoto per partire da adesso.

    Hai già un'espressione e vuoi solo che ti venga spiegata? Usa Spiega un'espressione cron.

    Cron standard a cinque campi come usato da Vixie cron e cronie: minuto, ora, giorno del mese, mese e giorno della settimana. Quartz e altri formati con il campo dei secondi non vengono generati, e le espressioni incollate che i controlli non possono mostrare restano come scritte.

    Come creare un'espressione cron

    1. Parti da un preset, oppure imposta ogni campo per eseguire sempre, ogni N unità a partire da un inizio, su valori specifici o tra due valori.
    2. Controlla l'espressione, la sua descrizione in parole semplici e le prossime esecuzioni nel fuso orario usato dal tuo server.
    3. Copia l'espressione nel tuo crontab, nella pianificazione della CI o nel tuo scheduler. Puoi anche incollare un'espressione esistente per caricarla nei controlli.

    Costruire una pianificazione cron

    Un'espressione cron è composta da cinque campi separati da spazi: minuto, ora, giorno del mese, mese e giorno della settimana. Ogni campo risponde a una domanda su quando il job deve essere eseguito, e il job parte quando tutti corrispondono. Lasciare un campo come * significa ogni valore, ed è per questo che 0 * * * * viene eseguito all'inizio di ogni ora e 0 0 * * * una volta al giorno a mezzanotte.

    Il generatore offre per ogni campo quattro modi di dire ciò che vuoi. Un passo come */15 significa ogni 15° valore, un elenco come 1,15 sceglie valori esatti, un intervallo come 9-17 copre tutto ciò che sta tra due valori, e * significa ogni valore. Quando selezioni dei valori, le sequenze di tre o più consecutivi vengono scritte come intervallo, quindi dal lunedì al venerdì dà 1-5 anziché 1,2,3,4,5.

    Due trappole colgono la maggior parte delle persone. Cron usa l'orologio della macchina su cui gira, quindi un job impostato per le 09:00 parte alle 09:00 dell'ora del server, che potrebbe non essere la tua; l'elenco delle prossime esecuzioni ti permette di controllare in più fusi. E quando sia il campo del giorno del mese sia quello del giorno della settimana sono limitati, un job viene eseguito quando uno dei due corrisponde, il che può significare molte più esecuzioni del previsto.

    Suggerimenti

    Domande frequenti

    Come eseguo un job ogni 15 minuti?

    Imposta Minuto su Ogni 15 minuti a partire da 0, che scrive */15 * * * *. Il job viene eseguito ai minuti 0, 15, 30 e 45 di ogni ora.

    Come si scrive un inizio diverso da 0?

    Un inizio come il minuto 5 con un passo di 10 si scrive 5-59/10, che viene eseguito a 5, 15, 25, 35, 45 e 55. La forma più breve 5/10 funziona in alcune versioni di cron ma viene rifiutata da altre, quindi la forma lunga è la scelta portabile.

    Perché alcuni giorni sono scelti con intervalli e altri con elenchi?

    Tre o più valori consecutivi si scrivono come intervallo, quindi dal lunedì al venerdì è 1-5, mentre lunedì, mercoledì e venerdì sono 1,3,5. Entrambi significano esattamente i valori che hai selezionato.

    Cosa succede se imposto sia il giorno del mese sia il giorno della settimana?

    Il cron standard esegue il job quando uno dei due corrisponde, non entrambi. 0 9 1 * 1 viene eseguito il primo del mese e ogni lunedì. Lo strumento aggiunge una nota quando le tue scelte rientrano in quel caso.

    Quale fuso orario usano le prossime esecuzioni?

    Quello che scegli sotto l'espressione. Cron stesso usa il fuso orario della macchina o del container su cui gira, a meno che il crontab imposti CRON_TZ. Molti server usano UTC, quindi verifica prima di fidarti di un orario.

    Supporta i secondi, @daily o la sintassi Quartz?

    Costruisce solo espressioni a cinque campi. Incollare @daily o un'altra scorciatoia funziona e viene convertito nei suoi cinque campi. Le espressioni a sei campi e in stile Quartz vengono rifiutate, perché il loro primo campo è quello dei secondi. Spiega un'espressione cron lo spiega nel dettaglio.