我目前有一个预定的工作,如果有任何提醒,它会执行并发送电子邮件。现在,我需要更改作业,以便只有在有新警报时它才会发送电子邮件。我使用以下命令:
ALERT_COUNT=`ps -ef|grep myscript.pl|grep $alertCnt grep`
if [ $ALERT_COUNT -lt 0 ];
then exit 0; fi
echo "${EMAILBODY}" | mailx -r ${SENDER} -s "Alerts Email for $(date +%Y-%m-%d_%H:%M)" abcd@xyz.com
其中$ alertcnt是计算perl脚本中警报的变量。
但即使没有新警报,该作业仍会完成执行并发送电子邮件。
我也尝试了以下选项,但它没有工作:
ALERT_COUNT=`ps -ef|grep myscript.pl|grep $alertCnt grep`
Value="0"
if echo "$ALERT_COUNT" | grep -q "$Value"; then
echo "No Alerts Found";
fi
答案 0 :(得分:0)
我认为一个简单的解决方案是将新警报输出到一个文件,如果#大于0,你的bash脚本可以读入该函数并执行操作。
12