Cron je systémová služba, která běží na pozadí a neustále kontroluje konfigurační soubory (tzv. crontab), aby zjistila, zda v aktuální minutu nemá spustit nějaký příkaz nebo skript.
Každý uživatel v systému může mít svůj vlastní soubor s úlohami. K jeho úpravě slouží příkaz:
crontab -e (editace)crontab -l (výpis naplánovaných úloh)Zápis v crontabu se skládá z pěti časových polí a samotného příkazu.
* * * * * příkaz, který se má provést - - - - - | | | | | | | | | +----- den v týdnu (0 - 6) (neděle = 0) | | | +------- měsíc (1 - 12) | | +--------- den v měsíci (1 - 31) | +----------- hodina (0 - 23) +------------- minuta (0 - 59)
| Časový zápis | Význam |
|---|---|
| 0 5 * * * | Každý den v 5:00 ráno. |
| 30 18 * * 1-5 | Každý pracovní den v 18:30. |
| 0 0 1 * * | Prvního dne v měsíci o půlnoci. |
| * /15 * * * * | Každých 15 minut. |
| 0 12 * * 0 | Každou neděli v poledne. |
Moderní verze cronu umožňují místo čísel použít čitelnější zkratky:
0 0 * * *).0 * * * *)./usr/bin/python3 místo pouhého python3).0 2 * * * /home/user/backup.sh > /home/user/log.txt 2>&1Zajímavost: Existuje online nástroj Crontab.guru, který slouží jako interaktivní editor a „překladač“ cron výrazů do lidské řeči. Pomáhá předejít chybám, jako je nechtěné spuštění zálohování každou minutu místo jednou za hodinu.