Mit-SUers,
Ich versuche, einen Watchdog-Cron-Job auszuführen, um sicherzustellen, dass ein Prozess ausgeführt wird (DreamHost beendet weiterhin Prozesse). Ich war von dieser SU-Frage inspiriert .
Die Doppelpfeife ||
scheint jedoch nicht zu funktionieren.
Mein Cron-Eintrag:
# watchdog
MAILTO="me@gmail.com"
@daily . ~/.bashrc && cd /home/chucknorris/workingfolder/ && pgrep -f "python /home/chucknorris/workingfolder/web2py.py -K LLBean" > /dev/null || echo Hello
Das Problem ist: Wenn der Python-Prozess nicht ausgeführt wird, erhalte ich keine "Hallo" -Nachricht per E-Mail.
Wenn ich auf Singlepipe umsteige |
pgrep -f "python /home/chucknorris/workingfolder/web2py.py -K LLBean" > /dev/null | echo Hello
Der Cron-Job läuft einwandfrei. Ich habe die Nachricht erhalten, Hello
wenn mein Python-Prozess ausgeführt wird.
Auf der anderen Seite läuft das Doppelrohr feines direkt in der Schale.
Also es scheint mir ||
nicht nur im cron job zu arbeiten.
Würden Sie mir bitte helfen, herauszufinden, warum?
Vielen Dank!
||
einer "doppelten Pipe". Es ist eine logische 'oder' Operation und hat nichts mit Pipes zu tun.