#!/bin/bash #set -x 调试脚本可去掉注释 ProcNumber=$(ps -ef |grep -w nginx|wc -l) if [ ${ProcNumber} -le 1 ];then systemctl restart nginx #进程不存在,重启服务 fi
-eq:等于 -ne:不等于 -le:小于等于 -ge:大于等于 -lt:小于 -gt:大于
一行命令实现:若进程存在就kill
pid=`ps -ef | grep test.py | grep -v grep |awk '{print $2}'`;if [ -n "$pid" ] ;then kill $pid;else echo '进程未启动'; fi -n "$pid": -n 表示否定,不... 在$pid不为空时,结果为true,就是 not null的意思 会存在单引号与双引号的问题,NR==1表示第一行 $ ps -ef | grep web73 | grep -v grep |awk "NR==1 {print $2}" xt 5477 1233 0 09:10 pts/0 00:00:00 ./web73 $ ps -ef | grep web73 | grep -v grep |awk 'NR==1 {print $2}' 5477