« Zurück

Cron

GrundlagenWebhosting

Ein Cron ist ein Task-Manager, der im Hintergrund läuft und Programme in bestimmten Abständen und zu bestimmten Zeiten ausführt. Er ist ein wesentlicher Bestandteil der meisten Unix-ähnlichen Betriebssysteme. Er automatisiert die Instandhaltung, Verwaltung und andere Prozesse seines Systems. Zum Beispiel die Verbindung mit dem Internet oder das automatische Herunterladen von E-Mails.

Ein Crontab ist eine Textdatei, die Informationen und Daten zur Steuerung des cron enthält. Wer jedoch die Benutzer sind, die cron ausführen oder ihre eigene Aufgabenliste erstellen können, wird in den Dateien /etc/cron.allow und /etc/cron.deny festgelegt. Benutzer, deren Namen in cron.allow aufgeführt sind und/oder die nicht in cron.deny aufgeführt sind (verboten für hier aufgeführte Benutzer), können die Aufgabenliste bearbeiten.

Das allgemeine Aussehen des Timings ist wie folgt:

 * * * * * Benutzer / Programm

Die Sternchen definieren die Zeiteinheiten, Zeitintervalle:

  • 1. Sternchen für die Minuten: kann einen Wert zwischen 0 und 59 annehmen
  • 2. Sternchen für die Stunde: kann einen Wert zwischen 0 und 23 annehmen
  • 3. Sternchen für die Tage des Monats: von 1 bis 31
  • 4. Sternchen für den Monat: mit einem Wert zwischen 1 und 12
  • 5. Sternchen für die Wochentage: 0 bis 6, wobei 0 für Sonntag steht

Dann müssen wir nur noch angeben, welche Aktion wir planen wollen.

Beispiele für das Timing

Nehmen wir an, wir wollen die Ausführung unseres Programms mit dem Namen „Beispiel“ planen. Das sieht dann für verschiedene Zeiten wie folgt aus.

Ausführung einmal pro Stunde: 0 * * * *
Ausführung einmal täglich um Mitternacht: 0 0 * * *
Einmal pro Woche am Sonntag um Mitternacht: 0 0 * * 0
Einmal im Monat am ersten Tag des Monats um Mitternacht: 0 0 1 * *
Einmal pro Jahr am 1. Januar um Mitternacht: 0 0 1 1 *

Für das vollständige Beispiel: 9 18 * * 5 /usr/local/bin/beispiel d.h. unser Beispielprogramm wird am 5. Tag der Woche, Freitag um 18 Uhr 9 Minuten, jeden Monat ausgeführt.
Wenn Sie mehr als einen Zeitpunkt angeben möchten, können Sie diese ohne Leerzeichen und Kommas hinzufügen. Im vorherigen Beispiel: 9 18 * * 2,5 /usr/local/bin/beispiel . Das bedeutet, dass unser Programm jeden Monat am zweiten und fünften Tag der Woche, Dienstag und Freitag, um 18 Uhr 9 Minuten ausgeführt werden soll.

Andere übliche Optionen für Timing:

*/5 : bedeutet alle durch 5 teilbaren Zeiten, z.B. jede fünfte Minute, Stunde usw.
1-5 : um größere Intervalle auszudrücken, so dass sie nicht durch Kommas getrennt werden müssen. Zum Beispiel bedeutet 1-5 für Tage die Wochentage.

Bedeutungen der in cron verwendeten Sonderzeichen

  • Ein Sternchen (*) steht für alle Werte innerhalb des Bereichs, z. B. jede Minute in der Stunde.
  • Schrägstrich (/) steht für: die Häufigkeit, die einem bestimmten Wert innerhalb eines Bereichs zugewiesen wird, z. B. bei Minuten steht 5/15 für jede 5. Minute bis alle 15 Minuten.
  • Prozentzeichen (%) bedeutet: die Umkehrung des Schrägstrichs.
  • Komma (,) steht für: die Angabe mehrerer Werte innerhalb eines Bereichs, z. B. für die Tage 2,3,4 steht Dienstag, Mittwoch, Donnerstag.
  • Bindestrich (-): Wenn Sie mehrere Werte auflisten möchten, es aber zu lang wäre, sie alle auszudrucken, können Sie sie alle zusammen eingeben. Im vorigen Beispiel kann man statt 2,3,4 auch 2-4 Methoden verwenden.
  • Rautezeichen (#): können nur für Wochentage verwendet werden,
  • „L“ bedeutet den letzten Wert. Bei der Verwendung für Tage bedeutet 4L den letzten Donnerstag des Monats. Es ist nur für Wochentage und Monate verwendbar.

Ähnliche Artikel