要实现功能
- 判断程序是否运行或停止
- 发送邮件
判断程序是否运行或停止
首先运行并测试下面代码,将QQ
换成要监控的进程名称
sudo vim monitor.sh # 创建文件
#将下面文件复制到monitor.sh中
chmod +x monitor.sh # 添加运行权限
./monitor.sh # 运行
if [ `ps -ef|grep QQ | grep -v grep |wc -l` -gt 0 ];then #QQ在运行则返回true
echo "QQ is running"
else
echo "QQ is not running"
fi
查看进程名称可输入top
如下所示 COMMAND
列下的名称
发送邮件
安装mailutils
sudo apt-get install mailutils
配置全部选择默认(一直按回车即可)
如果需要重新配置输入下列命令
sudo dpkg-reconfigure postfix
测试发送邮件
mail -s "邮件标题" 123@qq.com <<< '邮件内容'
实现Linux监控程序运行/停止+邮件通知
while [[ true ]]; do
if [ `ps -ef|grep QQ | grep -v grep |wc -l` -gt 0 ];then
sleep 5m # 睡眠5分钟:每5分钟检查一次QQ是否停止运行
else
mail -s "QQ停止运行!" 123@qq.com <<< 'QQ停止运行了'
break; # 退出监控
fi
done