¿Cómo puedo evitar que cron me envíe por correo electrónico los resultados de los trabajos que programo?
¿Cómo puedo evitar que cron me envíe por correo electrónico los resultados de los trabajos que programo?
Respuestas:
Si desea que un solo trabajo detenga el correo electrónico, simplemente agregue> / dev / null 2> & 1 a él
Por ejemplo:
0 * * * * /home/script >/dev/null 2>&1
Cron solo te envía un correo electrónico si hay salida, ya sea en stdouto stderr.
Si se trata de guión que ha escrito, hacerlo menos verboso - eliminar innecesarias echoo printdeclaraciones. Redirigir stdouta /dev/nulltambién es una solución válida:
2 * * * * /my/script > /dev/null
Si aún recibe mensajes después de hacer eso, la salida está activada stderr, por lo que debería ser un error, que debe resolver. Si no, puede redirigir stderra /dev/nullcon ...
2 * * * * /my/script > /dev/null 2> /dev/null
... aunque ignorar los mensajes de error es generalmente una mala idea. (¿Cómo sabrá cuando el trabajo cron está roto?)
Puede redirigir la salida de un comando específico de stderr a stdout usando 2>&1, por ejemplo:
command_which_prints_messages_to_stderr 2>&1 # redirect stderr to stdout
..entonces directo stdouta /dev/nullsu trabajo cron - de esa manera silencia el comando fuerte, sin perder mensajes de error