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

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

  • 对于tripwire,只有在发现违规行为时,我将如何收到电子邮件
  • 在cron中“每两分钟”是什么意思?
  • 无法启动cron服务
  • /etc/cron.daily/apt:分割错误
  • Cronjob星期六每周两周开始运行
  • cron守护进程多次分叉多个进程并运行作业
  • 5 Solutions collect form web for “如何将cronjob的输出发送到多个电子邮件地址?”

    它可能会有所不同,具体取决于您使用哪个cron守护程序包,但是这来自Ubuntu Hardy上的Vixie Cron的手册页:

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

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

     MAILTO="user.one@domain.one,user.two@domain.two" 

    作为上述答案的替代scheme,您可以将其发送到一个邮件组的单个地址。 如果您pipe理多个服务器,这种方法效果特别好,因为pipe理邮件服务器上的组中的地址,然后在每台服务器的crontab中pipe理地址更为简单。

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

    最好的答案可能是检查你的发行版的当前版本的cron / crontab的手册页,看看是否有可以用MAILTO参数完成的事情,或者指定一个邮件地址,然后再把邮件转发给你多个地址。

    在每封电子邮件后添加,例如: MAILTO="some.user1@example.com,some.user2@example.com"

    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.