Crontab.guru: Cronjobs erstellen leicht gemacht

3 Minuten
  Kommentare Kaffe spendieren
08.07.2023 von Johannes Benkert

Was ist ein Cronjob?

Ein Cronjob ist ein Zeitgesteuertes Werkzeug, das in Unix-ähnlichen Betriebssystemen zum Einsatz kommt. Vereinfacht gesagt hilft dir dieses nützliche Werkzeug dabei, Automatisierungsaufgaben zu erledigen, indem geplante Jobs zu vordefinierten Zeiten ablaufen. Du kannst es nutzen, um deine Datenbanken regelmäßig zu sichern, Skripte zu bestimmten Zeiten laufen zu lassen oder sogar deine E-Mail-Listen zu aktualisieren!

Glaub mir, die Möglichkeiten sind fast endlos, wenn du genau weißt, wie du einen Cronjob erstellst und verwendest.

Wie erstellt man einen Cronjob

Wenn es darum geht, einen Cronjob zu erstellen, musst du wissen, dass die Hauptaufgabe aus zwei Teilen besteht: Der Anwendung, die du ausführen willst und dem spezifischen Zeitpunkt oder Zeitplan, wann du willst, dass sie läuft.

Grundlegende Syntax von Cronjobs

Die Syntax eines typischen Cronjobs sieht folgendermaßen aus:

* * * * * command-to-be-executed
- - - - -
| | | | |
| | | | ----- Tag der Woche (0 - 7) (Sonntag =0 oder =7)
| | | ------- Monat (1 - 12)
| | --------- Tag des Monats (1 - 31)
| ----------- Stunde (0 - 23)
------------- Minute (0 - 59)

Ja, da geht oftmals etwas durcheinander. Aber keine Sorge, wir i-Tüpfelchenreiter:Innen hier bei [dein Blogname] sorgen dafür, dass du das verstehst!

Wie Cronjobs funktionieren

Cronjobs arbeiten mit der crontab-Datei (cron table), einer Konfigurationsdatei, in der alle Cronjobs und ihre Timings aufgelistet sind. Mit jeder Minute prüft die Cron-Daemon-Software in deinem System, ob geplante Jobs zum Ausführen bereit sind.

Erstellen von Cronjobs mit crontab -e

Um einen Cronjob zu erstellen, musst du den Befehl crontab -e verwenden. Das öffnet deinen crontab-Editor, in dem du deinen neuen Job hinzufügen oder eine bereits vorhandene Aufgabe bearbeiten kannst.

crontab -e

Mit crontab -l kannst du allerdings deine vorhandenen Cronjobs auflisten.

Codebeispiele für Cronjob-Erstellung

Ein einfaches Beispiel für einen Cronjob könnte sein, dass ein Skript namens script.sh jeden Tag um 2 Uhr morgens ausgeführt wird. Das könnte so aussehen:

0 2 * * * /pfad/zu/deinem/./script.sh 

Webseite mit Cronjob aufrufen

Um eine Website mit einem Cronjob aufzurufen, kannst du einfach den Befehl curl verwenden. Dieser Befehl ruft die Webseite auf und gibt den Inhalt aus. Das könnte so aussehen:

*/5 * * * * curl https://deine-webseite.com/aktueller-inhalt

Damit wird die Webseite alle 5 Minuten aufgerufen. So kannst du z.B. Caching-Skripte automatisieren oder andere Dinge, die du regelmäßig ausführen möchtest. Wenn du das noch mit einem Log kombinierst, kannst du auch nachvollziehen, wann die Webseite aufgerufen wurde:

Ausgabe eines Cronjobs in eine Log-Datei speichern

Oftmals möchte man die Ausgabe eines Cronjobs in einer Datei speichern, um bei Bedarf nachzuvollziehen, was passiert ist. Dafür kann man einfach folgende Syntax verwenden:

0 2 * * * /pfad/zu/deinem/./script.sh  >> /pfad/zu/logs/cronlogs.log

Dadurch wird die Ausgabe des Skripts script.sh um 2 Uhr morgens in die cronlogs.log Datei geschrieben.

Häufige Fehler und ihre Behebung bei Cronjobs

Fehler beim Erstellen und Verwalten von Cronjobs passieren. Sie sind normal, also keine Sorge. Mit der Zeit wirst du immer besser darin, sie zu vermeiden und zu beheben. Einige der häufigsten Fehler könnten sein, dass der Befehl nicht gefunden wird oder das Cronjob-Format ist nicht korrekt. Dafür gibt es Lösungswege!

Einführung in Crontab.guru

Zur einfacheren Erstellung und zur Prüfung der Syntax kann ich die Website Crontab.guru mir empfehlen. Dank ihrer großartigen Features ist sie zu einem Game Changer für alle geworden, die Cronjobs in ihren Projekten verwenden. Screenshot von crontab.guru

Vorteile von Crontab.guru

Der Hauptvorteil von Crontab.guru liegt auf der Hand: sie ist extrem benutzerfreundlich und hat eine leicht verständliche Benutzeroberfläche. Du hast die Möglichkeit, Cron Ausdrücke mit leichter Handhabung zu kreieren und zu überprüfen, ob dein Timing-Ausdruck korrekt ist.

So verwendet man Crontab.guru

Die Verwendung dieser Website ist ein Kinderspiel. In der großen Box kannst du deine Cron-Ausdrücke eingeben und das Tool zeigt dir sofort an, wann der nächste Cronjobs ausgeführt werden würde und ob er überhaupt korrekt ist. Außerdem werden unten alle “Befehle” erklärt. Einfacher geht’s nicht.

Zusammenfassung und abschließende Gedanken

Cronjobs können anfangs einschüchternd wirken, aber sobald du dich mit ihrem Aufbau und ihrer Funktion vertraut gemacht hast, wirst du ihre Macht und Vielseitigkeit zu schätzen wissen. Sie sind ein mächtiges Werkzeug in deiner Entwickler:Innen-Werkzeugkiste.

Bleib stets neugierig, bleib dran und experimentiere weiterhin mit verschiedenen Aufgaben und Timing-Optionen. Halte deine Arbeit stets aktuell und du wirst die Früchte deiner Anstrengungen ernten.

Viel Spaß beim Coden!