
CRON: ein .cronfile erstellen (2/2)
Im Cronfile werden die Jobs gespeichert, die per Cron ausgeführt werden sollen.
Dafür wird ein ganz bestimmtes Format verwendet, das im folgenden detailiert
beschrieben wird.
Grundsätzlich werden Leerzeilen irgnoriert und Kommentare können, gleich wie
in Perl, mit dem Doppelkreuz (#) eingefügt werden, allerdings nur als ganze
Zeile mit dem # beginnend.
Daneben gibt es zwei Arten von Einträgen in einem Cronfile, die eigentlichen
Cronjobs und Umgebungsvariablen.
Umgebungsvariablen
Die Umgebungsvariablen werden in folgendem Format eingegeben: name = wert.
Die Leerzeichen um das Gleichheitszeichen müssen nicht unbedingt sein, dagegen
werden Leerzeichen im Wert berücksichtig. Um Probleme mit Leerzeichen zu
vermeiden, empfiehlt sich die Verwendung von einfachen oder doppelten
Anführungszeichen.
Eine der wichtigsten Umgebungsvariable die gesetzt werden kann, ist
die MAILTO-Variable. Wenn diese gesetzt ist, werden Fehlermeldungen
bei der Ausführung eines Cronjobs an diese Mail geschickt. Sollte diese
Variable nicht gesetzt sein, werden die Fehler oft an Root oder ins
Nirvana geschickt. Zur Überwachung der Cronjobs sollte die Variable unbedingt
gesetzt werden, zum Beispiel:
MAILTO=support@perlunity.de
Um die Mail ganz zu unterdrücken gibt den Wert, wie folgt an:
MAILTO=""
Cronjobs
Jeder Cronjob im Cronfile ist eine Kombination aus einer bestimmten
Anzahl von Feldern, die durch ein Leerzeichen voneinander getrennt sind.
Die ersten fünf Felder dienen zur Festlegung der zeitlichen Komponente
des Cronjobs und das sechste Feld legt die Aktion fest.
Bestimmung der Ausführungszeit
Folgende Werte sind für die Eingabe erlaubt:
Feld 1: Minute 0-59
Feld 2: Stunde 0-23
Feld 3: Tag 0-31
Feld 4: Monat 0-12
Feld 5: Tag der Woche 0-7
Anstelle eines festen Wertes, kann man auch einen "*" einsetzen, das bedeutet,
daß der Cronjob zu jedem Wert des Feldes ausgeführt wird. Beispielsweise bedeutet
ein "*" im Feld 3, daß der Cronjob jeden Tag ausgeführt wird. Als weiteres
Zeichen kann ein "-" eingesetzt werden, um Intervalle darstellen zu können, ohne
jeden Wert einzeln aufführen zu müssen, zum Beispiel "1-5" im Feld 2 würde
bedeuten, daß der Cronjob von 1 bis 5 Uhr ausführt wird. Daneben ist noch
möglich ein "," oder ein "/" zu verwenden, wenn die Ausführungszeiten nicht
in am Stück liegen, zum Beispiel "0,10,20,30,40,50" im Feld 1 würde eine
Ausführung alle 10 Minuten zur Folge haben. Mit dem "/" könnte man das einfacher
ausdrücken "0-59/6". Die Zeichen können auch gemischt werden, zum Beispiel
"0-4,8-12" oder auch "*/2".
Bestimmung der auszuführenden Aktion
Das sechste Feld und letzte Feld (Rest der Zeile) des Cronfiles legt nun die
Aktion fest, die ausgeführt werden soll. Hierbei ist besonders auf den Pfad zu
achten, es sollte immer der absolute Pfad verwendet werden. Die Aktion umfaßt
alle Zeichen, auch die Newlines und Parameter, die für den Aufruf notwendig
sind. Bei der Implementierung von Aktionen, ist auch darauf zu achten, daß
der notwendigen Rechte vorhanden sind, damit Cron die Aktionen wie gewünscht
ausführen kann.
Einige Beispiele für Cronjobs:
#0 Uhr deutsche Zeit ist 16 Uhr auf dem Server
#Mailouput an
MAILTO="cron@perlunity.de"
#Tabellenoptimierung (einmal pro Nacht)
19 18 * * * /usr/home/www/crons/tables.cgi
#Session zurücksetzen (einmal pro Minute)
0-59 * * * * /usr/home/www/crons/session.cgi
Kommentare
01.12.2002 - 16:17 | Kakaomonster | Webmaster@Kakaomonster.de
Hallo, ich würde gerne per Cronjob einen Teil meiner DB, also nur bestimmte Tabellen, von ... 

27.10.2002 - 17:10 | iSolution | info@isolution-online.de
Hallo, hat jemand eine Ahnung ob das ganze auch bei STRATO funktioniert ? Habe alle Premiu... 

11.03.2002 - 16:55 | didi | didi.g@gmx.de
Bei Puretec kannst du ab dem Premium Paket Cron jobs nützen ich nutze das und es funktioni... 

23.11.2001 - 17:23 | Jamie Bruca | jamie.bruca@gmx.net
Hi all! Ich habe gerade mein Crons eingerichet, bekomme aber immer eine Fehlermeldung pe... 

21.11.2001 - 03:03 | Stahli | afrostl@web.de
mann sollte da immer \@ eingeb... 

22.10.2001 - 17:39 | mario | mario@posavec.net
Wie kann ich einen CRON bei Purtec einrichten?? Ich habe davon keine Ahnung, möchte aber... 

17.10.2001 - 13:52 | TommiB | webmaster@anzeigenpoint.de
Hallo, ich habe Probleme die Variable: #Mailoutput an MAILTO="webmaster@anzeigenpo... 

Kommentar anfügen
|