如何使用 mail 命令 shell 脚本设置特定日期(假设是星期五)发送电子邮件?
我需要使用 shell 脚本仅每周发送一次邮件(例如(星期五))的逻辑。
mailx -s "Subject $DATE " -r "resource" -a $LOG [email protected] < status
这个邮件每天都会发邮件吗?
答案1
要重复执行某项任务,您需要设置一个 cron 作业。为此,我们首先创建您要执行的任务的脚本。
创建名为(例如 mail.sh)的文件,其中输入以下内容:
#!/bin/bash
mailx -s“主题$DATE”-r“资源”-a $LOG[电子邮件受保护]<状态
保存文件。通过在终端中输入以下命令来分配脚本执行权限:
$ chmod +x mail.sh
运行脚本./mail.sh
以确保其有效。
现在该脚本不会在每个星期五自动运行。对于该安装crontab
.
$ sudo apt install crontab
现在在终端输入:
$ crontab -e
选择您最喜欢的编辑器并将该行添加到末尾。 (首先参考下面的链接)
0 0 * * 5 mylocation/mail.sh
上述代码将在每周星期五凌晨 12:00(5 表示)准时运行 mail.sh。
请参阅关联了解 crontab。你也可以谷歌 crontab。我建议您了解如何使用 crontab 并仅附加行。