在* NIX下,您可以使用curl发出一个简单的HEAD请求(HEAD只请求头,而不是页体):
原文链接:https://www.f2er.com/bash/390942.htmlcurl --head http://myurl/
然后,您可以只获取第一行,其中包含HTTP状态代码(200 OK,404 Not Found等):
curl -s --head http://myurl/ | head -n 1
然后检查您是否获得了体面的回复(状态代码为200或3 **):
curl -s --head http://myurl/ | head -n 1 | grep "HTTP/1.[01] [23].."
如果状态代码正常,这将输出第一行,如果没有,则输出第一行。你也可以管道到/ dev / null获得没有输出,并使用$?以确定其是否工作或否:
curl -s --head http://myurl/ | head -n 1 | grep "HTTP/1.[01] [23].." > /dev/null # on success (page exists),$? will be 0; on failure (page does not exist or # is unreachable),$? will be 1
EDIT -s只是告诉curl不显示“进度条”。