我们经常需要做一些进程的检查脚本
脚本的名称,我们希望是包含进程的关键字,但是在检查进程是否存在的时候,
脚本名称和进程名称一样,需要格外小心
例如检查zabbix的脚本如下
脚本名称 check_zabbix_agentd.sh
#!/bin/bash prog=$(ps -ef | grep zabbix_agentd|grep -v grep|grep -v "$0") if [ -z "$prog" ];then /usr/local/zabbix/sbin/zabbix_agentd echo $(date '+%F %H:%M:%S')" zabbix agent process started" >> /usr/local/shell/check_zabbix_agentd.sh.log fi
ps -ef | grep zabbix_agentd|grep -v grep|grep -v "$0"
grep -v "$0" 可以过滤掉检查脚本自身的PID