CRM- und DatenplattformenMarketing Werkzeuge

Cron verstehen und verwenden: Eine umfassende Anleitung zum Planen von Jobs

cron, kurz für Befehl online ausführenist ein leistungsstarker zeitbasierter Jobplaner in Unix-ähnlichen Betriebssystemen. Der Begriff cron ist ein Wortspiel kronos or chronos, das in der griechischen Mythologie die Zeit darstellt. Der Name cron für den zeitbasierten Job-Scheduler spiegelt seine Funktion wider, Aufgaben zu bestimmten Zeiten oder Intervallen zu planen und auszuführen, und ist damit eine passende Anspielung auf das Zeitkonzept in der Mythologie.

Mit Cron können Sie sich wiederholende Aufgaben automatisieren, Skripte in bestimmten Intervallen ausführen und die Systemeffizienz aufrechterhalten. Dieser umfassende Leitfaden führt Sie durch alles, was Sie über Cron wissen müssen, von der Installation bis zur Verwendung, dem Schlüsselvokabular und echten Codebeispielen.

Inhaltsverzeichnis

  1. Was ist Cron?
  2. Cron installieren
  3. Grundlegende Konzepte und Terminologie
  4. Cron-Syntax
  5. Beispiele und Anwendungsfälle
  6. Häufige Fallstricke und Best Practices
  7. Zusätzliche Cron-Ressourcen

Was ist Cron?

Cron ist ein Daemon (Hintergrundprozess), der auf Unix-basierten Systemen, einschließlich Linux und macOS, läuft. Sein Hauptzweck besteht darin, geplante Aufgaben automatisch auszuführen. Diese Aufgaben können von einfachen Skripten bis hin zu Systemwartung und Backups reichen.

Cron installieren

In den meisten Unix-ähnlichen Systemen ist cron vorinstalliert. Sie können die Verfügbarkeit überprüfen, indem Sie ein Terminal öffnen und Folgendes eingeben:

crontab -e

Wenn dieser Befehl den Cron-Tabelleneditor öffnet, haben Sie Cron installiert. Wenn nicht, können Sie es mit dem Paketmanager Ihres Systems installieren. Unter Ubuntu können Sie beispielsweise Folgendes verwenden:

sudo apt-get install cron

Cron-Konzepte und Terminologie

Bevor wir uns mit der Cron-Nutzung befassen, wollen wir einige wesentliche Konzepte und Terminologie verstehen:

Erklärung des Cron-Diagramms
  • crontab: Kurz für Cron Tisch, es handelt sich um eine Datei, die die Liste der geplanten Aufgaben für einen Benutzer enthält.
  • Cron-Job: Eine einzelne Aufgabe oder ein einzelner Befehl, dessen Ausführung zu einem bestimmten Zeitpunkt geplant ist.
  • Felder: Jeder Cronjob verfügt über fünf Felder, die definieren, wann der Job ausgeführt wird:
    • Minute (0-59)
    • Stunde (0-23)
    • Tag des Monats (1-31)
    • Monat (1-12)
    • Wochentag (0–7, wobei sowohl 0 als auch 7 den Sonntag darstellen)

Cron-Syntax

Es ist von entscheidender Bedeutung, die Syntax eines Crontab-Eintrags zu verstehen. Es folgt dem Muster:

* * * * * command-to-be-executed

Hier ist eine kommentierte Erklärung, die Sie in Ihren Cron-Job einfügen können:

# +---------------- minute (0 - 59)
# | +------------- hour (0 - 23)
# | | +---------- day of month (1 - 31)
# | | | +------- month (1 - 12)
# | | | | +---- day of week (0 - 6) (Sunday=0 or 7)
# | | | | |
* * * * * /var/www/html/myscript.php

Jedes Sternchen (*) stellt ein Feld im Cron-Ausdruck dar. Um beispielsweise jeden Tag um 3:30 Uhr einen Job zu planen, würden Sie Folgendes verwenden:

30 15 * * * command-to-be-executed

Cron-Beispiele und Anwendungsfälle

Sehen wir uns einige praktische Beispiele an, um die Verwendung von Cron zu veranschaulichen:

  • Täglich ein Skript ausführen: Um jeden Tag um Mitternacht ein Skript auszuführen, können Sie Folgendes verwenden:
0 0 * * * /path/to/script.sh
  • Stündlich ein Skript ausführen: Für eine stündliche Aufgabe verwenden Sie:
0 * * * * /path/to/script.sh
  • Wöchentliches Backup: Um eine wöchentliche Sicherung sonntags um 2 Uhr morgens zu planen, verwenden Sie:
0 2 * * 0 /path/to/backup-script.sh
  • Ausführen einer Aufgabe in bestimmten Monaten: So führen Sie einen Job nur im Januar und Juli um 8:30 Uhr aus:
30 8 * 1,7 * /path/to/script.sh

Cron-Fallstricke und Best Practices

  • Umgebungsvariablen: Stellen Sie sicher, dass Ihre Cron-Jobs die erforderlichen Umgebungsvariablen einrichten, da Cron-Jobs die Umgebungsvariablen Ihrer Shell nicht erben.
  • Berechtigungen: Stellen Sie sicher, dass Sie die Berechtigungen für Ihre Skriptdatei als ausführbar festlegen. Jedes Mal, wenn ich mein Skript erneut speicherte, stellte ich fest, dass meine Berechtigungen erneut festgelegt werden mussten!
  • Pfadvariablen: Geben Sie den vollständigen Pfad zu ausführbaren Dateien und Skripten in Ihren Cron-Jobs an, um Probleme mit relativen Pfaden zu vermeiden.
  • Testen: Testen Sie sie in einer sicheren Umgebung, bevor Sie kritische Cron-Jobs einrichten, um sicherzustellen, dass sie wie erwartet funktionieren.
  • Protokollierung: Leiten Sie die Ausgabe Ihrer Cron-Jobs in eine Protokolldatei um, um deren Ausführung und mögliche Fehler zu verfolgen.
0 0 * * * /path/to/script.sh >> /path/to/cron.log 2>&1

Dieser Cron-Job führt ein Skript aus /path/to/script.sh jeden Tag um Mitternacht, und die vom Skript generierte Ausgabe (sowohl stdout als auch stderr) wird an die Protokolldatei angehängt

/path/to/cron.log. Dies ist eine gängige Praxis, um die Ausgabe von Cron-Jobs zu Überwachungs- und Fehlerbehebungszwecken zu erfassen und zu protokollieren. Lassen Sie uns diese spezielle Cron-Job-Syntax aufschlüsseln:

  • *0 0 * * *: Dieser Teil definiert den Zeitplan, wann der Cron-Job ausgeführt werden soll. In diesem Fall ist die Ausführung jeden Tag um Mitternacht (0 Minuten nach 0 Stunden) geplant.
  • /path/to/script.sh: Dies ist der Befehl oder das Skript, das ausgeführt werden soll, wenn der Cron-Job ausgeführt wird. Dieses Beispiel zeigt ein Skript, das sich unter befindet /path/to/script.sh.
  • >> /path/to/cron.log: Dieser Teil leitet die Standardausgabe (stdout) des Cron-Jobs in eine Protokolldatei mit dem Namen um cron.log befindet sich /path/to/dem „Vermischten Geschmack“. Seine >> Der Operator hängt die Ausgabe an die Protokolldatei an. Wenn die Datei nicht vorhanden ist, wird sie erstellt. Wenn sie bereits vorhanden ist, wird die Ausgabe am Ende der Datei hinzugefügt.
  • 2> & 1: Dies wird zum Umleiten von Standardausgabe (stdout) und Standardfehler (stderr) in dieselbe Protokolldatei verwendet. Der 2 stellt stderr dar, und die 1 stellt stdout dar. Also, 2>&1 bedeutet, dass sowohl stdout als auch stderr in dieselbe zuvor angegebene Protokolldatei umgeleitet werden.

Cron ist ein wertvolles Tool zur Automatisierung von Aufgaben auf Unix-basierten Systemen. Mit seinen flexiblen Planungsoptionen kann es die Systemverwaltung vereinfachen und die Effizienz steigern. Wenn Sie die Syntax verstehen und Best Practices befolgen, können Sie die Leistungsfähigkeit von Cron nutzen, um Ihre Routineaufgaben effektiv zu automatisieren.

Zusätzliche Cron-Ressourcen

Douglas Karr

Douglas Karr ist CMO von Öffnen Sie EINBLICKE und Gründer der Martech Zone. Douglas hat Dutzenden erfolgreicher MarTech-Startups geholfen, war bei der Due Diligence von MarTech-Akquisitionen und -Investitionen im Wert von über 5 Milliarden US-Dollar behilflich und unterstützt weiterhin Unternehmen bei der Umsetzung und Automatisierung ihrer Vertriebs- und Marketingstrategien. Douglas ist ein international anerkannter Experte und Redner für digitale Transformation und MarTech. Douglas ist außerdem Autor eines Dummie-Ratgebers und eines Buchs über Unternehmensführung.

Ähnliche Artikel

Nach oben-Taste
Menu

Adblock erkannt

Martech Zone ist in der Lage, Ihnen diese Inhalte kostenlos zur Verfügung zu stellen, da wir unsere Website durch Werbeeinnahmen, Affiliate-Links und Sponsoring monetarisieren. Wir würden uns freuen, wenn Sie Ihren Werbeblocker entfernen würden, während Sie unsere Website besuchen.