Shell脚本监控程序运行情况(结束进程)
上一篇博客写到了重启程序,那么结束程序该怎么写脚本呢?
还是用前面的例子:我有个程序是qt生成的可执行文件,名字为Manipulator,路径是/home/mk90/Documents/qt_exercise/build-Manipulator-Desktop-Debug,它的监控脚本如下:
kill.sh
#! /bin/bash
while true
do
monitoring=` ps -ef|grep Manipulator |grep -v grep| wc -l`
if [ $monitoring -eq 0 ]
then
echo "Manipulator is not running "
else
echo "Manipulator is running, and kill it"
ps -ef| grep Manipulator| grep -v grep| awk '{print $2}'| xargs kill -9 #xargs 将前面的结果作为参数给 kill-9
fi
sleep 3
done
其中指令的含义在上一篇
https://mp.csdn.net/mdeditor/94588412#
里面详细解释过了,不再重复,要重点说明的是这一行:
ps -ef| grep Manipulator| grep -v grep| awk '{print $2}'| xargs kill -9 #xargs 将前面的结果作为参数给 kill-<