1、基本用法
curl http://www.linux.com
执行后,www.linux.com 的html就会显示在屏幕上了
Ps:由于安装linux的时候很多时候是没有安装桌面的,也意味着没有浏览器,因此这个方法也经常用于测试一台服务器是否可以到达一个网站
curl命令参数很多,这里只列出我曾经用过、特别是在shell脚本中用到过的那些。
-v/--verbose 小写的v参数,用于打印更多信息,包括发送的请求信息,这在调试脚本是特别有用。
-m/--max-time <seconds> 指定处理的最大时长
-H/--header <header> 指定请求头参数 -H "platform:ccj"
-s/--slient 减少输出的信息,比如进度
--c
onnect-timeout <seconds> 指定尝试连接的最大时长
-x/--proxy <proxyhost[:port]> 指定代理服务器地址和端口,端口默认为1080
-T/--upload-file <file> 指定上传文件路径
-o/--output <file> 指定输出文件名称
-d/--data/--data-ascii <data> 指定POST的内容
--retry <num> 指定重试次数
-e/--referer <URL> 指定引用地址
-I/--head 仅返回头部信息,使用HEAD请求
2、保存访问的网页
linux的重定向功能保存
curl http://www.linux.com >> linux.html
2.2:可以使用curl的内置option:-o(小写)保存网页
curl -o linux.html http://www.linux.com
- curl -I 'http://127.0.0.1' 输出服务器头部信息返回
4.GET模式什么option都不用,只需要把变量写在url里面就可以了,也可以使用-X GET
-X 用于指定发送数据的方式:
比如:
curl http://www.jb51.net/login.cgi?user=nickwolfe&password=12345
5.而POST模式的option则是 -d,在使用 -d 的情况下,如果省略 -X,则默认为 POST 方式:
curl -d "user=nickwolfe&password=12345" http://www.jb51.net/login.cgi
6.-g 禁用网址序列和范围使用{}和[]
curl -H "platform:ccj_cct" -g http://10.50.8.16:12001/activityService/sku/getSkuInfo?productIds=[11001244813]
curl: (3) [globbing] error: bad range specification after pos 150的解决方法:
在模拟的请求中加上 -g