使用curl获取网站的http的状态码

发布:thebaby 来源:net 【大中小】

本文分享一例shell脚本,一个使用curl命令获取网站的httpd状态码的例子,有需要的朋友参考下。本文转自:

在shell中使用curl命令,,取得网站的http状态码。

例子:

复制代码代码示例:

# cat http_status.sh#!/bin/bashfor i in `cat sites.txt`doSTATUS_CODE=`curl -o /dev/null -s -w %{http_code} $i`echo -e “$i:\t$STATUS_CODE”done

调用示例:

复制代码代码示例:

# cat sites.com

# sh http_status.sh: 200: 200: 200

附, Shell下curl的使用。curl是一个访问url的工具,可以用他构造http request报文,且可以解析服务器返回的http response,额外还支持cookie特性,可以用curl完成web浏览器的基本功能。当然curl还支持HTTPS/FTP/FTPS/TELNET/LDAP等协议。

本文只介绍下curl强大的HTTP功能。

通用语法:curl [option] [URL…]在处理URL时其支持类型于SHELL的名称扩展功能,如[1996-1999]/vol[1-4]/part{a,b,c}.html可以生成多个期望的URL

curl的选项功能:不带任何参数时 curl 将返回指定url中的数据并打印在屏幕上-o out 将指定curl返回保存为out文件,内容从html/jpg到各种MIME类型文件-O 按服务器上的名称保存下载的文件-r/–range from-to 下载指定range内的数据-C 在保存文件时进行续传-A/–user-agent <ua> 指定发送请求的用户代理,例如:curl -A My-Agent/1.0.0 -x ip:port 指定使用的http代理,例如:curl -x 192.168.1.1:8080 -D head.txt 将服务器的返回的header保存为文件,头部的cookie也可被保存,例如:curl -D header.txt -c <file> 保存服务器的cookie文件-b/–cookie <name=data> 向服务器提交cookie,若无=则name视为文件名,例如:curl -b cookie.txt -e url 设置引用头的值-T localfile 向服务器PUT文件 例如:curl -T 1.mp3 -d <key=value> 向服务器POST表单数据 例如:curl -d “order=111&count=2” -F <key=value> 向服务器POST表单,例如:curl -F “web=@index.html;type=text/html” url.com如果希望从本地文件中获取表单数据,则在文件名前加@ ,例如:curl -d @data.xml 若希望从标准输入获取则用curl -d – -E cert.pem 指定本地证书-H <header:value> 为HTTP请求设置任意header及值。如curl -H “Connection:keep-alive” -I 构造一个HEAD请求-X/–request method 用户定义的HTTP请求方法名如curl -X GET –compressed 采用压缩方式接收返回数据–connect-timeout <s> 设置超时时间-v 详细输出,包含请求和响应的首部–retry num–retry timeo 指定重试的次数和间隔–tcp-nodelay 打开TCP_NODELAY选项 不进行捎带确认环境 变量:http_proxy [protocol://]<host>[:port]

背着背包的路上,看过许多人,

使用curl获取网站的http的状态码

相关文章:

你感兴趣的文章:

标签云: