shell需求:
写一个shell脚本,通过curl -I 返回状态码来判定所访问的网站是否正常,例如当代码状态为200时为正常,当网站不正常时脚本自动发送邮件提醒。
shell分析:
1.从判定结果中截取出代码状态。
2.编辑判定脚本中使用curl -I 命令测试,然后通过awk截取状态代码。
3.写发送邮件的脚本,用sendEmail(生产环境有配套的模板)。
4.将判定与发送邮件关联起来。
以www.51xit.top为例,先使用curl -I 命令测试:
200就是我们要截取代码状态
具体步骤:
1.安装邮件组件。
[root@localhost ~]# wget http://caspian.dotconf.net/menu/Software/SenEmail-v1.56.tar.gz
[root@localhost ~]# tar -zxvf sendEmail-v1.56.tar.gz
[root@localhost ~]# cp sendEmail-v1.56/sendEmail /usr/local/bin/
[root@localhost ~]# chmod 755 /usr/local/bin/sendEmail
2.编辑发邮件脚本
3.编辑判断脚本。
4.测试。
先用发邮件的脚本,输入接收的邮箱,本次实验用的是qq邮箱。
邮箱接收到了脚本发送的邮件,脚本执行成功。
接下来我们执行判断的脚本。
邮箱并没有收到脚本发送的邮件,说明网站是正常的。
如果收到了脚本发送的邮件,说明网站异常。