脚本引发灵异

简介:

问题一 严格过滤ip
lvs.cf中使用脚本做后端的健康检查,为了方便的将后端挂上或者取下
我建立了一个后端列表,只要在此列表中有效的主机才做健康检查
一直没注意的一个小问题
列表如下
192.168.1.71
192.168.1.11
192.168.1.12

所以只需要
grep "主机IP" 列表
然后对过滤的结果做判断即可

但是最近无法正常工作
原来是列表中加了一个191.168.1.111
我过滤192.168.1.11时将此ip也过滤出来了,导致后面的判断出错
所以必须要严谨啊
grep "\b主机IP\b" 列表


问题二 echo的结果所见非所得
我对web做检查,使用的是wget,由于效率低改用curl来抓取http header

[root@localhost ha]# curl -I -s -m 1 --retry 2 --retry-delay 2 http://192.168.1.71/TestLive.zip
HTTP/1.1 200 OK
Server: xxxx/1.1
X-Powered-By: xxx; xxxx
ETag: W/"0-xxxx"
Last-Modified: Fri, 15 Oct 2010 10:49:50 GMT
Content-Type: application/zip
Content-Length: 0
Date: Fri, 05 Nov 2010 02:24:34 GMT

-I 表示只过滤头部
-s 表示不输出进度(默认是会在屏幕上打印出进度的)
-m 是最大完成时间1s

然后过滤出"HTTP/1.1 200 OK" 使用
curl -I -s -m 1 --retry 2 --retry-delay 2 http://192.168.1.71/TestLive.zip|grep 'HTTP/1.1 200'|awk '{print $3}'       
输出OK

恰好我的lvs中定义的expect也是0K,搞定!但是很奇怪的是,放到lvs上根本不起作用

由此我对产生的输出产生了怀疑,亲眼所见也不是那么可靠的.
执行如下操作
[root@yahoon ha]# a=`curl -I -s -m 1 --retry 2 --retry-delay 2 http://192.168.1.71/TestLive.zip|grep 'HTTP/1.1 200'|awk

'{print $3}'`
[root@yahoon ha]# echo $a
OK
到这一步正常,变量a里面存着OK
[root@yahoon ha]# echo $a"b"
bK
看到没,输出并不是我想象的OKb,而是bK
可见a里面还有不可见字符,可别被打印出来的OK给骗了

换种思路,对"HTTP/1.1 200 OK"不输出0K了,输出200,然后对200做判断,如果是200,就自己打印出OK
HTTPCODE=`curl -I -s -m 1 --retry 2 --retry-delay 2 http://192.168.1.71/TestLive.zip|grep 'HTTP/1.1 200'|awk '{print $2}'`
if [ 200'P' != $HTTPCODE'P' ]; then
        echo 'fail'
        exit 0
else
        echo 'OK'
fi


本文转自yahoon 51CTO博客,原文链接:http://blog.51cto.com/yahoon/416007,如需转载请自行联系原作者

相关文章
|
3月前
|
安全 数据库 数据安全/隐私保护
基于易语言开发的定时关机程序
基于易语言开发的定时关机程序
34 0
|
3月前
|
移动开发 JavaScript C#
分享53戏源代码总有一个是你想要的(亲测每一个均可用)
分享53戏源代码总有一个是你想要的(亲测每一个均可用)
22 0
|
8月前
|
数据安全/隐私保护
搞个脚本—自动赚猿分(脱壳篇)
搞个脚本—自动赚猿分(脱壳篇)
|
7月前
|
Python
一个12306自动抢票的脚本
一个12306自动抢票的脚本
427 1
|
11月前
|
运维 监控 Shell
太牛了!100个Shell脚本实例,代码清晰拿来就能用,再也不怕写不对了!
太牛了!100个Shell脚本实例,代码清晰拿来就能用,再也不怕写不对了!
|
11月前
|
Python
python植物大战僵尸二十二之僵尸攻击状态改变
python植物大战僵尸二十二之僵尸攻击状态改变
64 0
|
消息中间件 前端开发 JavaScript
阿里云真好使
通过使用阿里云,让我学会了数据库
|
Web App开发 前端开发 JavaScript
这个油猴脚本也许对你微信排版有帮助
这是一个看脸的时代,颜值很重要,运营公众号做内容也是如此。除了要让内容本身有料、有用、有趣之外,我们还要给用户提供一个高颜值的排版。那么,如何排版出一个好看微信文章呢?
210 0