我們經常需要做一些進程的檢查腳本
腳本的名稱,我們希望是包含進程的關鍵字,但是在檢查進程是否存在的時候,
腳本名稱和進程名稱一樣,需要格外小心
例如檢查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