Disable The Mail Alert By Crontab Command On a Linux or Unix-like Systems
Source: nixCraft
How do I to disable the mail alert send by crontab? When my job is executed and the jobs cannot run normally it will sent an email to root. Why do I receive e-mails to my root account from cron? How can I prevent this? How can I disable email alert sent by cron jobs on a Linux or Unix-like systems?
The crontab command is used to maintain crontab files for individual users. By default the output of a command or a script (if any produced), will be email to your local email account. To stop receiving email output from crontab you need to append following strings at the end of crontab entry.
Cron job prevent the sending of errors and output
To prevent the sending of errors and output, add any one of the following at the end of the line for each cron job to redirect output to a
.
/dev/null 2>&1.
OR
&> /dev/null
Cron job example
Edit/Open your cron jobs, enter:
$ crontab -e
Append string >/dev/null 2>&1
to stop mail alert:
0 1 5 10 * /path/to/script.sh >/dev/null 2>&1
OR
0 1 5 10 * /path/to/script.sh &> /dev/null
Save and close the file.
Set MAILTO variable
You can set MAILTO=""
variable at the start of your crontab file. This will also disable email alert. Edit/Open your cron jobs:
$ crontab -e
At the top of the file, enter:
MAILTO=""
Save and close the file.