From 259e2ff74c50d240b99e46c3ec6326ca8f98a0a2 Mon Sep 17 00:00:00 2001
From: Matthias Andree
C6. Fetchmail works OK started up manually, but not
from an init script.
C7. How can I forward mail to another
-host?.
-
+host?
+C8. Why is "NOMAIL" an error?/I frequently get messages
+from cron!
How to make fetchmail play nice with various MTAs
@@ -1290,6 +1291,37 @@ host?
fetchmail on, use the smtphost
or
smtpname
option. See the manual page for details.
Some users want to write scripts that take action only if mail +could/could not be retrieved, thus fetchmail reports if it has retrieved +messages or not.
+ +If you do not want "no mail" to be an error condition (for instance, +for cron jobs), use a POSIX-compliant shell and add this to the end of +the fetchmail command line, it will change an exit code of 1 to 0 and +others to 1:
++|| [ $? -eq 1 ] ++ +
If you want to map more than one code to 0, you cannot cascade multiple +|| [ $? -eq N ], but you must instead use the +-o operator inside the brackets, (see the test(1) +manpage for details), such as:
+ ++|| [ $? -eq 1 -o $? -eq 9 ] ++ +
A full cron line might then look like this:
+ ++*/15 * * * * fetchmail -s || [ $? -eq 1 ] ++ +