天天看点

shell批量检查N个网站地址是否正常(debian/centos)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

<code>我的博客已迁移到xdoujiang.com请去那边和我交流</code>

<code>==========================Debian=====================================</code>

<code>cat</code> <code>checkurl.sh </code>

<code>#!/bin/bash</code>

<code>#--------------------------------------------------</code>

<code># Date:2015-05-04</code>

<code># Author:jimmygong</code>

<code># Mail:[email protected]</code>

<code># Function:check website(curl)</code>

<code># Version:1.0</code>

<code>set</code> <code>-o nounset</code>

<code>echosucc () </code>

<code>{</code>

<code>    </code><code>succstatus=</code><code>"[ Ok ]"</code>

<code>    </code><code>printf</code> <code>"\033[32m $succstatus $* \033[0m\n"</code>

<code>}</code>

<code>echofail () </code>

<code>{ </code>

<code>    </code><code>failstatus=</code><code>"[ Failure ]"</code>

<code>    </code><code>printf</code> <code>"\033[31m $failstatus $* \033[0m\n"</code>

<code>    </code><code>exit</code> <code>1</code>

<code>urllist=(</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1639520</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1639753</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1641646</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1641803</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com/</code>

<code>http:</code><code>//oldboy</code><code>.blog.51cto.com</code>

<code>http:</code><code>//etiantian</code><code>.org</code>

<code>10.1.1.1</code>

<code>)</code>

<code>function</code> <code>checkwait () </code>

<code>    </code><code>echo</code> <code>-n </code><code>"start check url."</code>

<code>    </code><code>for</code> <code>((i=0;i&lt;3;i++))</code>

<code>    </code><code>do</code>

<code>        </code><code>echo</code> <code>-n </code><code>"."</code><code>;</code><code>sleep</code> <code>1</code>

<code>    </code><code>done</code>

<code>    </code><code>echo</code>

<code>function</code> <code>checkurl () </code>

<code>    </code><code>checkwait</code>

<code>    </code><code>cat</code> <code>/etc/issue</code><code>|</code><code>head</code> <code>-1</code>

<code>    </code><code>for</code> <code>((i=0;i&lt;${</code><code>#urllist[*]};i++))</code>

<code>        </code><code>status=`curl -o </code><code>/dev/null</code> <code>-s -m 10 --connect-timeout 15 -w </code><code>"%{http_code}\n"</code> <code>${urllist[$i]}`</code>

<code>        </code><code>if</code> <code>[[ $status == </code><code>'200'</code> <code>]]</code>

<code>        </code><code>wget -T 15 --tries=1 --spider ${urllist[$i]} &gt; </code><code>/dev/null</code> <code>2&gt;&amp;1</code>

<code>        </code><code>[[ $? -</code><code>eq</code> <code>0 ]]</code>

<code>        </code><code>then</code>

<code>            </code><code>echosucc ${urllist[$i]}</code>

<code>        </code><code>else</code>

<code>            </code><code>echofail ${urllist[$i]}</code>

<code>        </code><code>fi</code>

<code>checkurl</code>

<code>exit</code> <code>0</code>

<code>============================说明===============================</code>

<code>执行结果</code>

<code>bash</code> <code>checkurl.sh </code>

<code>start check url....</code>

<code>Debian GNU</code><code>/Linux</code> <code>6.0 \n \l</code>

<code> </code><code>[ Ok ] http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1639520</code> 

<code> </code><code>[ Ok ] http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1639753</code> 

<code> </code><code>[ Ok ] http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1641646</code> 

<code> </code><code>[ Ok ] http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1641803</code> 

<code> </code><code>[ Ok ] http:</code><code>//7938217</code><code>.blog.51cto.com/ </code>

<code> </code><code>[ Ok ] http:</code><code>//oldboy</code><code>.blog.51cto.com </code>

<code> </code><code>[ Ok ] http:</code><code>//etiantian</code><code>.org </code>

<code> </code><code>[ Failure ] 10.1.1.1</code>

<code>-m</code><code>/--max-time</code> <code>&lt;seconds&gt; 设置最大传输时间</code>

<code>-s</code><code>/--silent</code><code>静音模式。不输出任何东西</code>

<code>-o</code><code>/--output</code> <code>把输出写到该文件中</code>

<code>-w</code><code>/--write-out</code> <code>[</code><code>format</code><code>]什么输出完成后</code>

<code>--connect-timeout &lt;seconds&gt; 设置最大请求时间</code>

<code>===========================Centos=====================================</code>

<code>source</code> <code>/etc/init</code><code>.d</code><code>/functions</code>

<code>            </code><code>action ${urllist[$i]} </code><code>/bin/true</code>

<code>            </code><code>action ${urllist[$i]} </code><code>/bin/false</code>

<code>=================================说明==============================</code>

<code>CentOS release 6.6 (Final)</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1639520</code>              <code>[  OK  ]</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1639753</code>              <code>[  OK  ]</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1641646</code>              <code>[  OK  ]</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com</code><code>/7928217/1641803</code>              <code>[  OK  ]</code>

<code>http:</code><code>//7938217</code><code>.blog.51cto.com/                             [  OK  ]</code>

<code>http:</code><code>//oldboy</code><code>.blog.51cto.com                               [  OK  ]</code>

<code>http:</code><code>//etiantian</code><code>.org                                       [  OK  ]</code>

<code>10.1.1.1                                                   [FAILED]</code>

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

继续阅读