1、简介
curl是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称url为下载工具。
2、示例
# 开启gzip请求
curl -Ihttp://www.baidu.com/ -HAccept-Encoding:gzip,defalte
# 监控网页的响应时间
curl -o/dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer:%{time_starttransfer}\ntime_total: %{time_total}\n" "http://www.baidu.com"
# 监控站点可用性
curl -o/dev/null -s -w %{http_code} "http://www.baidu.com"|xargs -I {} echo {}
# 以http1.0协议请求,默认为http1.1
curl -0http://www.baidu.com
# 读取网页
curl http://www.baidu.com
# 保存网页
curl http://www.baidu.com>page.html
curl -opage.html http://www.baidu.com
# 使用的proxy服务器及其端口
curl -x123.45.67.89:1080 -o page.html http://www.baidu.com
# 使用cookie来记录session信息
curl -x123.45.67.89:1080 -o page.html -D cookie0001.txt http://www.baidu.com
# 下一次访问的时候,如何继续使用上次留下的cookie信息
curl -x123.45.67.89:1080 -o page1.html -D cookie0002.txt -b cookie0001.txt http://www.baidu.com
# 浏览器信息
curl -A"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -x123.45.67.89:1080 -o page.html -D cookie0001.txt http://www.baidu.com
# 服务器端常用的限制方法,就是检查http访问的referer
curl -A"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -x123.45.67.89:1080 -e "mail.baidu.com" -o page.html -D cookie0001.txt http://www.baidu.com
备注:比如你先访问首页,再访问里面所指定的下载页,这第二次访问的referer地址就是第一次访问成功后的页面地址。这样,服务器端只要发现对下载页面某次访问的referer地址不是首页的地址,就可以断定那是个盗连了
# 下载文件
curl -o1.jpg http://cgi2.tky.3web.ne.jp/~zzh/screen1.JPG
curl -Ohttp://cgi2.tky.3web.ne.jp/~zzh/screen1.JPG
curl -Ohttp://cgi2.tky.3web.ne.jp/~zzh/screen[1-10].JPG
curl -o#2_#1.jpg http://cgi2.tky.3web.ne.jp/~{zzh,nick}/[001-201].JPG
# 下载断线续传
curl -c-O http://cgi2.tky.3wb.ne.jp/~zzh/screen1.JPG
# 分块下载
curl -r0-10240 -o "zhao.part1" http:/cgi2.tky.3web.ne.jp/~zzh/zhao1.mp3&\
curl -r10241-20480 -o "zhao.part1" http:/cgi2.tky.3web.ne.jp/~zzh/zhao1.mp3&\
curl -r20481-40960 -o "zhao.part1" http:/cgi2.tky.3web.ne.jp/~zzh/zhao1.mp3&\
curl -r40961- -o "zhao.part1" http:/cgi2.tky.3web.ne.jp/~zzh/zhao1.mp3
catzhao.part* > zhao.mp3
# 下载ftp网站文件
curl -uname:passwd ftp://ip:port/path/file
curl ftp://name:passwd@ip:port/path/file
# 上传文件
curl -Tlocalfile -u name:passwd ftp://upload_site:port/path/
curl -Tlocalfile http://cgi2.tky.3web.ne.jp/~zzh/abc.cgi
curl http://www.yahoo.com/login.cgi?user=nickwolfe&password=12345
curl -d"user=nickwolfe&password=12345" http://www.yahoo.com/login.cgi
curl -Fupload=@localfile -F nick=go http://cgi2.tky.3web.ne.jp/~zzh/up_file.cgi
curl -Elocalcert.pem https://remote_server
curldict://dict.org/d:computer
# 检查所有主机上所有域名是否有备案
curl -d"cxfs=1&ym=xieyy.cn" http://www.miibeian.gov.cn/baxx_cx_servlet
# post提交带空格的数据
curl -D cookie -d "username=abcdef" -d "password=abcefg" http://login.xxx.com/这样就能成功登入了
# 模拟表单信息,模拟登录,保存cookie信息
curl -c./cookie_c.txt -F log=aaaa -F pwd=****** http://blog.51yip.com/wp-login.php
# 模拟表单信息,模拟登录,保存头信息
curl -D./cookie_D.txt -F log=aaaa -F pwd=****** http://blog.51yip.com/wp-login.php
# 使用cookie文件
curl -b./cookie_c.txt http://blog.51yip.com/wp-admin
# 伪造来源地址,有的网站会判断,请求来源地址
curl -ehttp://localhost http://blog.51yip.com/wp-login.php
# 不会显示下载进度信息
curl -s-o aaa.jpg
# 显示下载进度条
curl -#-O
# 使用curl获取HTTP头信息
curl -Ihttp://www.example.com
# 使用curl获取HTTP status code
curl-sL -w "%{http_code}\\n" www.baidu.com-o /dev/null
# 查询本机出口地址信息
curlmyip.ipip.net
#
curl -H"Content-Type: application/json" -XPOST --data '{
"enterpriseName":null,
"enterpriseId":null,
"groupName":"",
"tagName":"",
"pageNum":1,
"pageSize":10,
"total":0
}' http://localhost:8033/admin/enterprise/getList
标签:baidu,常用,http,jp,www,例子,curl,com
From: https://blog.51cto.com/zzzhao/6143132