在控制台输出中为某些关键字发送Sendmail

时间:2018-10-21 13:23:54

标签: shell ubuntu

如果长时间运行的进程的Ubuntu控制台输出包含某些关键字,例如,我想收到一封电子邮件。如果它报告某些过程的开始和完成。

我猜想grep和sendmail的结合可以在管道中解决此问题,但是我仍然经验不足。您会建议哪种设置?

1 个答案:

答案 0 :(得分:0)

好吧,您可以在每个grep(或您认为合适的时间间隔)内,继续log触发30 mins文件中的确切关键字。

result=`grep -e 'keyword1' -e 'keyword2' mylog.log` (or you can have individual greps for every keyword)

如果找到,则发送电子邮件:

echo "Process completed!!" | mail -s "Process Status" someone@somewhere.com

您可以根据需要将以上语句包含在shell脚本中。让我知道是否有帮助。