0
我监视日志文件,一个单词之前使用TAC输出5日线后出现它bash的只有电子邮件,如果自去年警报
#!/bin/bash
tac /var/log/syslog |grep -m1 -A5 -B5 'WORD' | tac >> /tmp/systemp
mailx email commands
rm /tmp/systemp
和我设置一个cron运行每5分钟一次,但如预期的那样,我收到重复的提醒邮件,我如何让它发送最后一次发送的电子邮件,直到下一次发送邮件为止?
即
Feb 27 15:05:39 WORD (email)
Cron runs again after 5 minutes
Feb 27 15:05:39 WORD (don't email)
Cron runs again after 5 minutes
Feb 27 15:35:39 WORD (email)
酷嵌入式'date',但是你就不能管'awk'输出到'grep'? – shellter 2015-03-02 18:23:18
@shellter,是的,你可以。你甚至可以用'awk'完成所有的工作,但如果你喜欢之前的5个命中和5个之后的命中,它会变得更加复杂。你也可以用'-C5'改变'-A5'和'-B5',看我的更新。 – Jotne 2015-03-02 19:36:29
谢谢Jotne的一个问题是,即使没有出现这个词,即空白的电子邮件,它也会通过电子邮件发送给我。 – Lurch 2015-03-03 08:21:41