linux – Grepping,只有发现的东西才发送电子邮件
发布时间:2020-12-14 01:27:59 所属栏目:Linux 来源:网络整理
导读:#!/bin/bash( /usr/src/chkrootkit-$VERSION/chkrootkit ) | # Binarygrep 'INFECTED|Vulnerable' | # Only get found issues/bin/mail -s 'CHROOTKIT Weekly Run ($SERVERNAME)' $EMAIL # Send EMail 即使没有找到任何内容,它仍会发送电子邮件. 如果有东西
#!/bin/bash ( /usr/src/chkrootkit-$VERSION/chkrootkit ) | # Binary grep 'INFECTED|Vulnerable' | # Only get found issues /bin/mail -s 'CHROOTKIT Weekly Run ($SERVERNAME)' $EMAIL # Send EMail 即使没有找到任何内容,它仍会发送电子邮件. 如果有东西被掠过,那么只能发送什么? 解决方法
这可能……
只需在邮件命令中使用-E开关: man -Pcol -b mail | grep empty -E Don't send messages with an empty body. #!/bin/bash ( /usr/src/chkrootkit-$VERSION/chkrootkit ) | # Binary grep 'INFECTED|Vulnerable' | # Only get found issues /bin/mail -E -s 'CHROOTKIT Weekly Run ($SERVERNAME)' $EMAIL # Send EMail 或者将支票放入crontab进行自动处理,每天一次: @daily ( /usr/src/chkrootkit-$VERSION/chkrootkit ) | grep 'INFECTED|Vulnerable' 如果命令输出某事,Cron将发送邮件. 但是,在重新阅读之后 如果不需要在警报中转发邮件的任何部分,则无需使用管道. 所以你可以用这种方式使用条件: #!/bin/bash ( /usr/src/chkrootkit-$VERSION/chkrootkit ) | # Binary grep -q 'INFECTED|Vulnerable' && /bin/mail -s 'CHROOTKIT Weekly Run ($SERVERNAME)' $EMAIL -q切换到grep确保保持安静. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |