shell习题-监控80端口
1.要求:
写一个脚本,判断本机的80端口(假如服务为httpd)是否开启着,如果开启着什么都不做, 如果发现端口不存在,那么重启一下httpd服务,并发邮件通知你自己。 脚本写好后,可以每一分钟执行一次,也可以写一个死循环的脚本,30s检测一次。 |
2.脚本答案:
[[email protected] 2018-06-19]# cat httpd.sh #!/bin/bash [email protected] while true do Num=`netstat -lntup|grep -w "80"|wc -l` if [ "$Num" -eq 0 ];then /usr/bin/systemctl restart httpd > /dev/null 2>&1 Date=`date +%F-%T` echo "${Date} systemctl restart httpd"|mail -s "httpd" ${M ail} fi sleep 30 done |
3.测试脚本
3.1停止http [[email protected] 2018-06-19]# systemctl stop httpd 3.2运行脚本 [[email protected] 2018-06-19]# bash httpd.sh |