IT97 Blog

25. Dezember 2021

Cron Job

[vc_custom_heading text=”Ursprung” font_container=”tag:h3|text_align:left” google_fonts=”font_family:Roboto%3A100%2C100italic%2C300%2C300italic%2Cregular%2Citalic%2C500%2C500italic%2C700%2C700italic%2C900%2C900italic|font_style:400%20regular%3A400%3Anormal”]
Cron ist ein zeitbasierter Job-Scheduler in Unix oder Unix-ähnlichen Computer-Betriebssystemen. Benutzer verwenden Cron, um Jobs, das heißt die Ausführung von Befehlen oder Shell-Skripts zu festgelegten Zeiten, Terminen oder Intervallen zu planen.

Cron kann zur Automatisierung der Systemwartung oder -verwaltung, zum Download von Dateien aus dem Internet oder zum regelmäßigen E-Mail Versand genutzt werden. Es handelt sich hierbei um einen Daemon, also einen Hintergrundprozess, der immer auf dem Server läuft. Die Aufgaben, die Cron ausführen soll, werden als CronJob bezeichnet. Ursprünglich stammt der Name Cron vom griechischen Gott der Zeit “Chronos”.

[vc_custom_heading text=”Anwendungsmöglichkeiten von CronJobs” font_container=”tag:h3|text_align:left” google_fonts=”font_family:Roboto%3A100%2C100italic%2C300%2C300italic%2Cregular%2Citalic%2C500%2C500italic%2C700%2C700italic%2C900%2C900italic|font_style:400%20regular%3A400%3Anormal”]
CronJobs können für einzelne Befehle oder für die automatisierte Ausführung periodisch wiederkehrender und aneinander gereihter Befehle eingesetzt werden, zum Beispiel für das Bereinigen von Datenbanken durch Entfernen veralteter Einträge, Logfiles und Kommentare oder zum Erstellen regelmäßiger Statistiken zur Anzahl der Benutzer einer Website.

Weitere Anwendungsmöglichkeiten sind die Aktualisierung von RSS-Feeds, die Veröffentlichung neuer Inhalte auf einer Website zu einem bestimmten Termin, die gebündelte Generierung von Rechnungen oder der automatisierte Newsletterversand. Ebenso kann das Backup einer Datenbank mithilfe von CronJobs zeitgesteuert durchgeführt werden.

[vc_custom_heading text=”Das Cron-Job Format” font_container=”tag:h3|text_align:left” google_fonts=”font_family:Roboto%3A100%2C100italic%2C300%2C300italic%2Cregular%2Citalic%2C500%2C500italic%2C700%2C700italic%2C900%2C900italic|font_style:400%20regular%3A400%3Anormal”]
Unten haben wir zwei Tabellen eingefügt. Die erste Tabelle zeigt die allgemeine Syntax eines Cron-Jobs. Die zweite Tabelle zeigt die verschiedenen Symbole, die innerhalb eines Cron-Jobs verwendet werden und wofür sie verwendet werden können.

Die ersten fünf Komponenten des Cron-Jobs definieren die Zeit, zu der die Aufgabe ausgelöst werden soll. Damit können Sie entweder eine bestimmte Zeit einstellen oder ein Intervall wie jeden zweiten Tag oder jede Minute angeben.

Am Ende jeder Cron-Job-Zeile müssen Sie den Befehl angeben, der ausgelöst werden soll, wenn die Bedingungen der vorherigen Komponenten erfüllt sind.

[vc_single_image image=”2679″ img_size=”large” alignment=”center”]
[vc_custom_heading text=”Der Cron Job Syntax” font_container=”tag:h3|text_align:left” google_fonts=”font_family:Roboto%3A100%2C100italic%2C300%2C300italic%2Cregular%2Citalic%2C500%2C500italic%2C700%2C700italic%2C900%2C900italic|font_style:400%20regular%3A400%3Anormal”]
Sechs wesentliche Teile bilden einen Cron-Job.

Die ersten fünf Teile bilden die Timing-Syntax des Cron-Jobs. Diese fünf Teile bestehen aus der Minute, der Stunde, dem Tag des Monats, dem Monat und dem Wochentag.

Der letzte und sechste Teil der Syntax ist der Befehl, der ausgeführt werden soll, wenn die Bedingungen in der Timing-Syntax erfüllt sind.

* * * * * [COMMAND]
Minute
(0-59)
Hour
(0-23)
Day Of the Month
(1-31)
Month
(1-12)
Day of the week
(0-6)
Command to run
Codeblock
[vc_custom_heading text=”Cron Job Symbols Table” font_container=”tag:h3|text_align:left” google_fonts=”font_family:Roboto%3A100%2C100italic%2C300%2C300italic%2Cregular%2Citalic%2C500%2C500italic%2C700%2C700italic%2C900%2C900italic|font_style:400%20regular%3A400%3Anormal”]
Es gibt einige verschiedene Symbole, die Sie innerhalb eines Cron-Jobs verwenden können.

Das Symbol, das Sie wahrscheinlich am häufigsten in Ihren Cron-Jobs verwenden werden, ist das Sternchen (*). Das Sternchen bedeutet, dass der Cron bei jeder Änderung dieses Wertes ausgelöst wird. Wenn es beispielsweise in der Minutenspalte verwendet wird, wird der Cron jede Minute ausgelöst.

Das andere Symbol, das Sie verwenden werden, ist das Schrittwertsymbol, und dies ist der Schrägstrich (/). Dieses Symbol ist nützlich, wenn Sie möchten, dass ein Ereignis zu einer bestimmten Zeit auftritt.

Alle 5 Minuten wäre beispielsweise „*/5“ in der Minute-Spalte oder alle 3 Tage „*/3“ in der Spalte Tag des Monats.

Unten können Sie sich unsere Tabelle ansehen, um alle verschiedenen Symbole zu sehen, die Sie in einem Cron-Job verwenden können und wie sie verwendet werden können.

Symbols Usage Example Explanation
* Any Value * * * * * [CMD] Ran every minute of every day
, Value List seperator 0 0 * * 1, 3, 5 [CMD] Ran every Monday, Wednesday, Friday at midnight
Defines a range 0 0 * 1-6 * [CMD] Ran at midnight every day for the first 6 months
/ Step Values */5 */2 * * * [CMD] Ran every 6 minutes, every 2 hours, every day
@yearly
@annually
Non Standard @yearly [CMD] @annually [CMD] Ran at midnight on the first day of the year
@monthly Non Standard @monthly [CMD] Ran at midnight on the first day of the month
@weekly Non Standard @weekly [CMD] Ran at midnight on the first day of the week
@daily Non Standard @daily [CMD] Ran at midnight every day
@hourly Non Standard @hourly [CMD] Ran at the start of every hour
@reboot Non Standard @reboot [CMD] Ran when the cron service restarts, usually at boot
About Dirscher Martin
IT-Administrator - Tech.- & eMobility Enthusiast. - Lizenzierte Drohnen Pilot