wake-up-neo.com

如何将cronjob的输出发送到多个电子邮件地址?

在crontab文件的开头,可以使用MAILTO指令指示您希望将输出作为电子邮件发送到电子邮件地址。我想将输出发送到多个地址。是否可以(以及如何)指定多个地址?

56
Boaz

根据您使用的是哪个cron守护程序包,它可能有所不同,但这来自Ubuntu Hardy上Vixie Cron的联机帮助页:

如果定义了MAILTO(并且是非空的),则将邮件发送给如此命名的用户。通过用逗号分隔收件人用户,MAILTO也可以用于将邮件定向到多个收件人。如果定义了MAILTO但为空(MAILTO =“”),则不会发送任何邮件。否则,邮件将发送到crontab的所有者。

如果您没有使用Vixie Cron,或者不确定,请尝试使用crontab文件的手册页:man 5 crontab

示例

MAILTO="[email protected],[email protected]"
74
ThatGraemeGuy

作为上述答案的替代方法,您可以将电子邮件发送到单个地址,该地址是邮件组或通讯组列表。如果您管理多个服务器,则此方法特别有效,因为管理邮件服务器上的地址比管理每台计算机的crontab更为容易。

11
dtoubelis

一种解决方案可能是该用户帐户上的.forward文件,该文件将邮件发送到适当的地址。

4
Matt Simmons

最好的答案可能是检查您发行版的当前cron/crontab版本的手册页,以查看是否可以使用MAILTO参数来完成某些操作,或者指定一个邮件地址,该邮件地址又将邮件转发给您多个地址。

0
Bart Silverstrim

,后的每封电子邮件,例如:MAILTO="[email protected],[email protected]"

0
dannyb2100