Een Cronjob of crontab is een Unix commando dat een programma of script op een ingesteld
tijdstip uitvoert. Cronjobs worden gebruikt in Unix-achtige systemen als Linux, BSD en Apple Macintosh.
Het woord 'cron' is afkomstig van het Engelse woord chronograph, dat een soort stopwatch is.
Later is hier job (taak) aantoegevoegd.
Een cronjob die een systeem service draait wordt een daemon genoemd.
Dit zijn meestal servertoepassingen.
Vaak worden Cronjobs gebruikt voor het ophalen van de e-mail,
het verzenden van mail of het controleren op updates. Als een Cronjob op een
(web)server wordt gebruikt, is dat vaak om een database te back-uppen,
een PHP of perl script aan te roepen of een servercommando uit te voeren.
De meeste webhosters bieden cronjobs aan in een control panel zoals Plesk of DirectAdmin.
Cronjobs kunnen worden vergeleken met de taakplanner onder Microsoft Windows
en werken exact hetzelfde. Voor wie cronjobs via de terminal lastig in te stellen vindt,
zijn er verschillende programma's met een grafische gebruikersomgeving (GUI)
waarmee via een paar muisklikken een cronjob aangemaakt kan worden.
Syntaxis
Een cronjob wordt gemaakt met het unix commando crontab. Cronjobs kunnen de volgende tekens bevatten:
Teken | Commando |
* | Herhalen (minuten, uren, dagen, weken, maanden, jaren) |
*/5 | Herhalen iedere 5 (minuten, uren, dagen, weken, maanden, jaren) |
5 | Uitvoeren op de 5e (minuten, uren, dagen, weken, maanden, jaren) |
5-10 | Uitvoeren op de 5e tot de 10e (minuten, uren, dagen, weken, maanden, jaren) |
5, 10, 15,16, 17 | Uitvoeren op de 5e, 10e, 15e, 16e en 17e (minuten, uren, dagen, weken, maanden, jaren) |
30-36/2 | Uitvoeren op de 30e, 32e, 34e en 36e (minuten, uren, dagen, weken, maanden, jaren) |
Speciale opties voor het crontab commando:
Commando | Omschrijving | Vergelijkbaar aan |
@reboot | Eenmaal uitvoeren bij opstarten | n.v.t. |
@yearly | Eenmaal uitvoeren per jaar | 0 0 1 1 * |
@annually | Eenmaal uitvoeren per jaar | 0 0 1 1 * |
@monthly | Eenmaal uitvoeren per maand | 0 0 1 * * |
@weekly | Eenmaal uitvoeren per week | 0 0 * * 0 |
@daily | Eenmaal uitvoeren per dag | 0 0 * * * |
@midnight | Eenmaal uitvoeren per dag | 0 0 * * * |
@hourly | Eenmaal uitvoeren per uur | 0 * * * * |
De cronjobs moeten worden ingesteld via de volgende volgorde:
/minuten/ /uren/ /dagen/ /maanden/ /weekdagen/ /commando/ |
Veel internet applicaties die cronjobs ondersteunen, worden vaak geleverd met een syntax string die u kunt kopiëren.
U moet dan nog wel de tijden instellen.