Výrazy cron vypadají jako náhodná čísla a hvězdičky, ale řídí spouštění milionů naplánovaných úloh po celém internetu. Ať nastavujete zálohovací skript, plánujete e-mailové reporty nebo konfigurujete CI/CD pipeline, pochopení cronu je nezbytné. Tento tutoriál to usnadní pomocí bezplatného nástroje Parser cron.
Co budete potřebovat
- Výraz cron k dekódování, nebo rozvrh, který chcete vyjádřit jako cron
- Webový prohlížeč (Chrome, Firefox, Safari nebo Edge)
- Není třeba účet ani instalace
Návod krok za krokem
Zadejte výraz cron
Otevřete nástroj Parser cron. Do vstupního pole napište nebo vložte výraz cron. Zkuste například 0 9 * * 1. Nástroj ho okamžitě zpracuje a zobrazí, co znamená v přirozeném jazyce.
Přečtěte srozumitelný výsledek
Parser přeloží výraz do jasného popisu. Pro 0 9 * * 1 uvidíte něco jako „V 09:00 každé pondělí." Nástroj také zobrazuje příští naplánované časy spuštění, takže můžete ověřit, zda rozvrh dělá to, co očekáváte.
Upravujte a experimentujte
Upravujte výraz a sledujte, jak se popis aktualizuje v reálném čase. Změňte číslo, nahraďte hvězdičku hodnotou nebo přidejte rozsah. Tato okamžitá zpětná vazba je nejrychlejší způsob, jak se naučit syntaxi cronu a sestavit přesně ten rozvrh, který potřebujete.
Dobré vědět Výrazy cron mají typicky pět polí: minuta, hodina, den v měsíci, měsíc a den v týdnu. Některé systémy přidávají šesté pole pro sekundy, ale pět polí je standardem.
Porozumění pěti polím
Výraz cron se skládá z pěti polí oddělených mezerami:
┌───────────── minuta (0-59)
│ ┌───────────── hodina (0-23)
│ │ ┌───────────── den v měsíci (1-31)
│ │ │ ┌───────────── měsíc (1-12)
│ │ │ │ ┌───────────── den v týdnu (0-7, kde 0 a 7 jsou neděle)
│ │ │ │ │
* * * * *
Hvězdička * znamená „každý". Číslo znamená „přesně v této hodnotě". To je základ — vše ostatní z toho vychází.
Běžné vzory cron
Zde jsou vzory, které budete nejčastěji používat. Zadejte kteroukoli z nich do nástroje Parser cron a uvidíte vysvětlení a ověření:
| Výraz | Význam |
|---|---|
* * * * * |
Každou minutu |
0 * * * * |
Každou hodinu (v minutě 0) |
0 9 * * * |
Každý den v 9:00 |
0 9 * * 1 |
Každé pondělí v 9:00 |
0 9 * * 1-5 |
Ve všední dny v 9:00 |
0 0 1 * * |
První den každého měsíce o půlnoci |
0 */6 * * * |
Každých 6 hodin |
30 8 * * 1,3,5 |
Pondělí, středa, pátek v 8:30 |
0 0 * * 0 |
Každou neděli o půlnoci |
*/15 * * * * |
Každých 15 minut |
Tip Syntaxe kroků */n znamená „každých n intervalů". Takže */15 v poli minuty znamená každých 15 minut (v 0, 15, 30 a 45 minutách každé hodiny). Syntaxe rozsahu 1-5 v poli dne v týdnu znamená pondělí až pátek.
Vysvětlení speciálních znaků
| Znak | Význam | Příklad |
|---|---|---|
* |
Každá hodnota | * * * * * = každou minutu |
, |
Více hodnot | 0 9,17 * * * = v 9:00 a 17:00 |
- |
Rozsah hodnot | 0 9 * * 1-5 = všední dny |
/ |
Krokový interval | */10 * * * * = každých 10 minut |
Sestavení vlastních výrazů
Pro vytvoření výrazu cron od základu přemýšlejte o svém rozvrhu jako o odpovědích na pět otázek:
- Ve které minutě? (0-59, nebo
*pro každou minutu) - Ve které hodině? (0-23, nebo
*pro každou hodinu) - V který den měsíce? (1-31, nebo
*pro každý den) - Ve kterém měsíci? (1-12, nebo
*pro každý měsíc) - V který den týdne? (0-7, nebo
*pro každý den)
Například „každé úterý a čtvrtek v 14:30" se stane: minuta=30, hodina=14, den=, měsíc=, den_týdne=2,4, což dá 30 14 * * 2,4.
Důležité Cron používá 24hodinový čas. 9:00 ráno je 9, ale 9:00 večer je 21. Časové pásmo závisí na serveru, který spouští úlohu cron, nikoli na vašem místním čase. Vždy ověřte, které časové pásmo váš systém používá.
Časté otázky
Co se stane, když nastavím den_v_měsíci i den_v_týdnu? Ve standardním cronu se úloha spustí, když je splněna buď jedna, nebo druhá podmínka (jde o OR, nikoli AND). To mnoho lidí zaskočí. Pokud potřebujete obě podmínky, použijte obalový skript, který datum zkontroluje.
Mohu naplánovat něco na každé 2 hodiny?
Ano. Použijte 0 */2 * * *, což se spustí v minutě 0 každé druhé hodiny.
Jaký je rozdíl mezi 5polním a 6polním cronem? Některé systémy (jako Spring, Quartz) přidávají na začátku pole pro sekundy. Standardní Unix cron používá pět polí. Nástroj Parser cron podporuje oba formáty.
Další kroky
Nyní, když umíte číst a psát výrazy cron, zkuste sestavit rozvrhy pro vaše projekty. Pokud pracujete s dalšími vývojářskými nástroji, prohlédněte si Tester regulárních výrazů pro porovnávání vzorů nebo Formátovač JSON pro práci s konfiguračními soubory.