snmp程序常会自己停止,所以仿照写了以下脚本,以记录。
#! /bin/sh proc_name="net-snmp-5.5" # 进程名 file_name="/jfdata01/snmp/shell/cron.log" # 日志文件 pid=0 proc_num() # 计算进程数 { num=`ps -ef | grep $proc_name | grep -v grep | wc -l` return $num } proc_id() # 进程号 { pid=`ps -ef | grep $proc_name | grep -v grep | awk '{print $2}'` } proc_num number=$? if [ $number -eq 0 ] # 判断进程是否存在 then cd /jfdata01/snmp/net-snmp-5.5 ./agent/snmpd # 重启进程的命令,请相应修改 proc_id # 获取新进程号 echo `snmpwalk -v2c -c public 135.32.24.161:10061 1.3.6.1.4.1.81000.2.103.2.2.8.1.1` >> $file_name echo ${pid}, `date` >> $file_name # 将新进程号和重启时间记录 fi
原文是这里: