Shell 判断进程是否存在
需求:有时候在调用非本系统下面的服务时,需要先判断一下该服务是否已启动,如果没有的话则进行启动。
Shell 脚本
ps -ef | grep ProcessString | grep -v grep
if [ $? -ne 0 ]
then
dosomething to start
else
echo "runing"
fi
- ps 命令里面的 ProcessString 是能唯一定位该进程的字符串
- grep -v grep 是忽略掉 grep 本身的进程显示
- $? 是上一个函数的返回值
- -ne 表示不等于 ps 命令如果有结果的话,$? 的值就不为 0,否则等于 0
注意
- if 后面的 [] 要特别注意空格,不然命令就会报错
相关文章