我使用以下的shellcript来检查cron作业中的运行进程:
ps -ef|grep myprocess|grep -v "grep"
如果结果为空(表示进程未运行),我需要发送一封电子邮件,我该如何编写脚本?
答案 0 :(得分:6)
一个解决方案:
pgrep processname &>/dev/null && exit 0
echo |mail -s"Aiie, process processname not running!" mail@addresse.here
然后将其放入已建议的crontab中。当然,这意味着您必须安装mail
命令。
答案 1 :(得分:1)
你可以这样做
PROCESS_FOUND=`ps -ef|grep myprocess|grep -v grep`
if [ "$PROCESS_FOUND" = "" ]
then
#send mail from here ...Process not running
fi