Como posso parar o cron de me enviar por e-mail os resultados dos trabalhos que eu agendar?
10
Definindo a variável de ambiente "MAILTO" como ""
Algo como:
SHELL=/bin/bash
MAILTO=
01 * * * * /your/path/to/script/here.sh
Se você deseja que um único trabalho interrompa o e-mail, basta anexar> / dev / null 2> & 1 a ele
Por exemplo:
0 * * * * /home/script >/dev/null 2>&1
Cron envia apenas e-mails se houver saída, ativada
stdout
ou desativadastderr
.Se você escreveu um script, torne-o menos detalhado - remova declarações
echo
ouprint
instruções desnecessárias . Redirecionarstdout
para/dev/null
também é uma solução válida:Se você ainda receber mensagens depois de fazer isso, a saída estará ativada
stderr
; portanto, deve haver um erro que você deve resolver. Caso contrário, você pode redirecionarstderr
para/dev/null
com .... embora desconsiderar as mensagens de erro seja geralmente uma má ideia! (Como você saberá quando o trabalho cron é interrompido?)
Você pode redirecionar a saída de um comando específico de stderr para stdout usando
2>&1
- por exemplo:..then dirigir
stdout
a/dev/null
em seu trabalho cron - de que maneira você silenciar o brado, sem perder mensagens de errofonte