我正在安装新的 crontab 作业,它将执行 shell 脚本,然后将控制台上打印的错误发送到电子邮件。我知道需要执行的所有步骤,如下所示:
0 10,22 * * * . /X.sh 2>&1 >/dev/null | mail -s "subject" "email"
Mu的问题是:什么时候发送电子邮件?
- 即使 shell 脚本在下一轮(我的意思是下一个新的 cron 作业)之前完成,它也会每 12 小时发送一封电子邮件。
- 即使当前 cron 的持续时间仍然处于活动状态,它也会在 shell 脚本执行完成后发送一封电子邮件。
答案1
每次运行结束时都会发送电子邮件X.sh
,无论何时。
cron
默认情况下,它本身将通过电子邮件将作业的输出发送给相关crontab
所有者或任何MAILTO
设置的内容;您可以使用它而不是手动调用mail
.
答案2
这是第二个。 cron
无论作业何时完成,都会在作业完成时发送电子邮件。您可以通过设置如下来自行检查crontab
:
*/5 * * * * sleep 600; date
10 分钟后,您将每 5 分钟收到一封电子邮件。