Linux · 2009-01-24

shell编程入门_shell监控apache

监控服务器的apache是否有在运行,根据服务的类型所返回的数值来改判断,变量DAY下面的echo可以改成发email或者其他。

#!/bin/sh
for status in $(netstat -ntlp|grep 80|awk ‘{print $4}’|sed ‘s/://g’)
do
if [ -z “$status” ];then
DAY=$(date +%F\ %T)
echo “apache could no be running! $DAY” >>/root/apache_tmp.log;else
exit
fi
done

crontab每分钟调用一次:




root@debian:~# crontab -l
# m h dom mon dow command
#@hourly /bin/rsync.php
0-59 * * * * /root/check_apache_running.sh