我需要一个可以通过 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
。