如何通过shell脚本每10分钟发送一封邮件?

如何通过shell脚本每10分钟发送一封邮件?

我需要一个可以通过 shell 脚本每“n”分钟自动发送邮件的脚本?怎么做?

答案1

简短的脚本:

#!/bin/sh

mail -s "Hi, it's me again" user@host <<'END_MAIL'
Hi,

Just wanted to say I'm still here.
Don't forget to feed the cat.

Regards,
Me
END_EMAIL

克朗时间表:

10 * * * * /path/to/script.sh

您将编写脚本,在本例中实际上只是一个命令,用于向某人发送一封带有特定主题行和内容的电子邮件,使其可执行并将chmod +x script.sh其放在某个位置,例如您的主目录中。

在消息正文(在上面的脚本中作为此处文档给出)中,如果您需要 shell 扩展变量或命令替换,则更改为'END_EMAIL'END_EMAIL即删除引号)。请注意,这意味着$您的任何如果希望 shell 将其视为扩展的开始,则必须像\$本例一样进行转义。

crontab -e可以通过使用并键入上面的一行来添加 cron 计划。保存并退出编辑器将启用计划,并且它将每 10 分钟调用您的脚本。

您应该阅读crontab(5)( man 5 crontab) 了解如何格式化 crontab 计划。

您想要更改电子邮件的内容、主题或收件人,请编辑脚本。如果您想更改计划,请使用 更改 crontab crontab -e

相关内容