在linux中,是否有任何命令可以查找网站是否正常工作?希望ping命令helps...but如何检查返回数据包是否成功?
ping www.google.com请告知,在shell脚本中是否有任何方法可以找到网站正在工作或不使用ping命令?
发布于 2014-09-10 11:54:50
在脚本中,您可以在使用echo $?进行测试之后查找ping输出,如下所述。如果ping成功--这意味着网站已经启动--回声输出将返回0 output非零。
esunboj@L9AGC12:~$ ping 155.53.12.255
PING 155.53.12.255 (155.53.12.255) 56(84) bytes of data.
^C
--- 155.53.12.255 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2000ms
esunboj@L9AGC12:~$ echo $?
1
esunboj@L9AGC12:~$ ping 155.53.12.7
PING 155.53.12.7 (155.53.12.7) 56(84) bytes of data.
64 bytes from 155.53.12.7: icmp_req=1 ttl=48 time=239 ms
64 bytes from 155.53.12.7: icmp_req=2 ttl=48 time=240 ms
64 bytes from 155.53.12.7: icmp_req=3 ttl=48 time=241 ms
^C
--- 155.53.12.7 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 239.250/240.304/241.451/0.985 ms
esunboj@L9AGC12:~$ echo $?
0发布于 2014-09-10 11:51:57
而不是使用ping命令来确保端口80是打开的:
telnet www.domain.com 80如果网站没有阻止HEAD会话,您甚至可以在打开telnet会话后发送它。
发布于 2014-09-10 13:50:07
并不是每个网站都对ping做出响应,成功的ping并不能证明站点实际上是正确工作的。使用lynx,您可以测试页面的实际内容:
lynx -dump www.google.com \
| grep --silent '________' \
&& echo "Google search form found." \
|| echo "No Google search form found."nmap将告诉您端口是否正在侦听:
nmap www.google.com -p 80tcptraceroute还将告诉您端口是否打开:
tcptraceroute www.google.com 80还有小卷发..。
https://stackoverflow.com/questions/25764639
复制相似问题