如何配置将批次结果发送到的电子邮件?

如何配置将批次结果发送到的电子邮件?

在 at/batch 的手册页中,它说

The user will be mailed standard error and standard output from his 
commands, if any. Mail will be sent using the command /usr/sbin/sendmail. 
If at is executed from a su(1) shell, the owner of the login shell will 
receive the mail.

但是如何配置发送到哪个电子邮件地址?

在 cron 中可以使用 MAILTO 环境变量,但在at或中的任何地方都看不到它batch

答案1

我没有看到在 at 调用中执行此操作的方法,但您可能可以使用通过 at 调用的命令执行类似的操作:

 $ at 16:00
 at> some-command [arguments, &c.] 2>&1 | sendmail [-f <from-address>] <recipient>
 at> ^D

当命令运行时,它会将其输出交给 sendmail 以传递给指定的收件人,并且在我刚刚运行的快速测试中,这确实有效。

当然,如果您已经将某个命令的输出重定向到其他地方,那么您可能会不走运——但是,您可以随时 tee(1) 输出,或者在 at 作业中添加最后一行来调用 sendmail 以推出消息。

相关内容