twlogin 回复于:2004-04-13 13:38:08 |
#!/usr/bin/ksh
PROCESS_LIST=/export/home/mailsrv/process_list LOG=/export/home/mailsrv/log while read LINE do ps -ef|grep `echo $LINE|awk '{print $1}'`|grep -v grep if [ "$?" -eq 0 ];then exit 1 else process_name=`echo $LINE|awk '{print $1}'` echo "$process_name failed at `date`">>$LOG start_process=`echo $LINE|awk '{print $2" "$3}'` $start_process echo "$process_name restart at `date`" >>$LOG echo "--------------------------">>$LOG fi done<$PROCESS_LIST # more /export/home/mailsrv/process_list slapd .netscape/ldap/iplanet/server5/slapd-ldap1/start-slapd ns-httpd /netscape/ldap/netscape/server4/https-ldap1.cta.cq.cn/start 这是以前写的一个小脚本 用于监控指定的进程 process_list文件中的格式是 进程名 启动进程的命令 把它写到crontab中就可以了 日志文件文件记录到$LOG目录中 自己修改一下吧 |