如何为主题上的唯一消息更改cron输出电子邮件



我有一个每4小时运行一次的cron作业。当它将输出的电子邮件发送到gmail.com时,它会将其线程化,使查看最新消息或特定消息变得困难。

0 0,4,8,12,16,20 * * * /root/backup.sh #Backup of server

是否有可能在cron作业中插入"日期"命令输出,以便它不仅在主题中添加时间戳,而且使其唯一,因此来自相同cron作业的消息不会线程在一起?

也许是这样的?0 0、4、8、12、16、20 * * */root/backup.sh #'备份服务器日期的谢谢!

你可以有一个脚本,不给任何输出stderrstdout本身(那么cron不会发送任何电子邮件)。

脚本可以显式地发送电子邮件,例如使用mail -s "some subject";您还可以使用logger来编写日志消息。您可能需要mail -s $(date +"backup %D")

您的crontab条目可以重定向输出,例如/root/betterbackup.sh > /dev/null 2>&1,并且您明确确保在betterbackup.sh中完成适当的邮件和日志。

您可以在设置邮件描述的shell文件中使用 date +"%Y_%m_%d_%H:%M:%S" 。看到这个

如果你想在cron中指定date,那么你可以尝试下面的语法

0 */4 * * * yourshellscript.sh backup_server_`date +"%Y_%m_%d:%H:%M:%S"`

记住如果你使用mail -s "your subject"类型的邮件发送,那么你必须在上面提到的date命令中转义双引号
FYR见下文

mail -s "backup_server_`date +"%Y_%m_%d:%H:%M:%S"`" ur_id@example.com < myfile.txt

这里myfile.txt包含邮件正文

最新更新