Cronjob: Nicht bei allen Tasks eine Mail - geht das?
-
- Posts: 34
- Joined: 2002-11-21 23:23
- Location: Solingen
- Contact:
Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Hallo!
Mein Server "versorgt" mich dank Cron jeden Tag mit vielen vielen E-Mails. Nun will ich natürlich wissen, ob das alles auch gut gelaufen ist. ABER: Ein Task wird einmal pro Stunde ausgeführt und das hätte ich nicht gerne jedes Mal gemeldet. Gibt es die Möglichkeit, die Crontab so umzubauen, dass dieser Task nicht mailt, alle anderen aber schon?
Mein Server "versorgt" mich dank Cron jeden Tag mit vielen vielen E-Mails. Nun will ich natürlich wissen, ob das alles auch gut gelaufen ist. ABER: Ein Task wird einmal pro Stunde ausgeführt und das hätte ich nicht gerne jedes Mal gemeldet. Gibt es die Möglichkeit, die Crontab so umzubauen, dass dieser Task nicht mailt, alle anderen aber schon?
-
- Userprojekt
- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Meinst du die cron-"Standardmail", die dir die Ausgabe des Scripts liefert, oder einen von dir definierten Text ?
Für's erste sollte ein absolut ausreichen.
Für's erste sollte ein
Code: Select all
0 * * * * {script} > /dev/null > 2>&1
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
-
- Posts: 34
- Joined: 2002-11-21 23:23
- Location: Solingen
- Contact:
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Genau diese Ausgabemail meine ich. Aber: Ich habe jetzt mal Deinen Code eingebaut und dann wird das Script scheinbar überhaupt nicht mehr ausgeführt. Es geht darum, dass das Script einmal pro Stunde Banner neu gewichten soll und seit ich diesen oben genannten Code eingebaut hat, passiert das nicht mehr (der Ad-Server loggt es mit, daher habe ich es gesehen). Jetzt habe ich den Code wieder rausgenommen. Reicht vielleicht nur ein "> /dev/null" oder braucht man diese "> 2>&1" (was bedeutet das eigentlich?) wirklich?CaptainCrunch wrote:Meinst du die cron-"Standardmail", die dir die Ausgabe des Scripts liefert, oder einen von dir definierten Text ?
Für's erste sollte einabsolut ausreichen.Code: Select all
0 * * * * {script} > /dev/null > 2>&1
-
- Userprojekt
- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Wenn du nur ein > /dev/null machst, leitest du den stdout-Dateideskriptor nach /dev/null um. O.g. Dateideskriptor ist in den allermeisten Fällen das Terminal, auf dem der Job ausgeführt wird. Durch das 2>&1 leitest du auch noch stderr, also die Fehlerausgabe nach /dev/null um, sprich : dein Script würde keinerlei Bildschirmausgabe liefern.
Ich weiß ja nicht, wie dein Script vorgeht, aber anscheiend ist es auf die Ausgaben angewiesen. OK, dann probier doch mal, ein Minuszeichen vor die erste 0 zu setzen.
Ich weiß ja nicht, wie dein Script vorgeht, aber anscheiend ist es auf die Ausgaben angewiesen. OK, dann probier doch mal, ein Minuszeichen vor die erste 0 zu setzen.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
-
- Posts: 34
- Joined: 2002-11-21 23:23
- Location: Solingen
- Contact:
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
In meinem Fall handelt es sich um ein .sh Script, dass zwei Befehlen enthält. In der ersten Zeile wird per WGet eine Seite von einem server abgerufen und in der 2. Zeile wird diese Datei mit rm gelöscht. (Es geht nur darum, auf dem Server einen Prozess laufen zu lassen).CaptainCrunch wrote:Ich weiß ja nicht, wie dein Script vorgeht, aber anscheiend ist es auf die Ausgaben angewiesen. OK, dann probier doch mal, ein Minuszeichen vor die erste 0 zu setzen.
-
- Userprojekt
- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Dann wüsste ich nicht, warum das Script nicht durchlaufen sollte, wenn es keine Ausgabe liefert.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Evtl. weil in dem vorgeschlagenen Eintrag drei ">" drin sind?
Ich hätte jetzt so spontan dazu tendiert das mittlere wegzulassen...
Naja, mal ausprobieren...
Nico
Ich hätte jetzt so spontan dazu tendiert das mittlere wegzulassen...
Naja, mal ausprobieren...
seessle@cvs:~$ echo "Hallo" >/dev/null > 2>&1
bash: syntax error near unexpected token `2>'
Scheint also wirlklich eins zuviel zu sein.seessle@cvs:~$ echo "Hallo" >/dev/null 2>&1
seessle@cvs:~$
Nico
-
- Userprojekt
- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Stimmt ... hast natürlich Recht. Die Umleitung soll schließlich vom stderr (2) auf stdout (1) gehen, das > in der Mitte ist überflüssig wie ein Kropf ... :oops:
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
-
- Posts: 34
- Joined: 2002-11-21 23:23
- Location: Solingen
- Contact:
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Hallo!
Super, jetzt läuft es. Der Task wird weiterhin ausgeführt, aber es gibt keine Ausgabe und damit keine E-Mail mehr.
Vielen Dank und guten Rutsch!
Super, jetzt läuft es. Der Task wird weiterhin ausgeführt, aber es gibt keine Ausgabe und damit keine E-Mail mehr.
Vielen Dank und guten Rutsch!
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Ich würde übrigens (vielleicht nicht bei diesem Skript, aber bei komplizierteren) zu folgendem tendieren:
So kannst Du - auch ohne Mails - in der Datei skript_errors.out zumindest Ausführungsfehler nachvollziehen.
Ist aber Geschmacksache :-)
Code: Select all
/script.sh > /dev/null 2> skript_errors.out
Ist aber Geschmacksache :-)
-
- Userprojekt
- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Guter Einwand ... mache ich auch desöfteren ...So kannst Du - auch ohne Mails - in der Datei skript_errors.out zumindest Ausführungsfehler nachvollziehen.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
-
- Posts: 59
- Joined: 2002-08-31 19:15
- Contact:
Re: Cronjob: Nicht bei allen Tasks eine Mail - geht das?
Das kann man auch mit einem Befehl machen...sbrinkmann wrote:In meinem Fall handelt es sich um ein .sh Script, dass zwei Befehlen enthält. In der ersten Zeile wird per WGet eine Seite von einem server abgerufen und in der 2. Zeile wird diese Datei mit rm gelöscht. (Es geht nur darum, auf dem Server einen Prozess laufen zu lassen).CaptainCrunch wrote:Ich weiß ja nicht, wie dein Script vorgeht, aber anscheiend ist es auf die Ausgaben angewiesen. OK, dann probier doch mal, ein Minuszeichen vor die erste 0 zu setzen.
Einfach den Parameter --delete-after an wget übergeben