Update avaliable. Click RELOAD to update.
目录

Linux中curl命令使用详解


Linux中curl命令使用详解

介绍

curl是利用URL语法在命令行方式下工作的开源文件传输工具。它被广泛应用在Unix、多种Linux发行版中,并且有DOS和Win32、Win64下的移植版本。

使用

简单请求操作

# 请求地址并输出
curl //www.baidu.com
# 请求地址输出并保存
curl -o baidu.html //www.baidu.com
# 只显示出header信息
curl -I //www.baidu.com

模拟GET请求

# <form method="GET" action="junk.cgi">
#   <input type=text name="birthyear">
#   <input type=submit name="press" value="OK">
# </form>

curl "//www.wangjunneil.com/when/junk.cgi?birthyear=1905&press=OK"

模拟POST请求

# <form method="POST" action="junk.cgi">
#   <input type=text name="birthyear">
#   <input type=submit name="press" value=" OK ">
# </form>

curl --data "birthyear=1905&press=%20OK%20" //www.wangjunneil.com/junk.cgi
# 若参数中存在特殊字符可以加上参数--data-urlencode自动编码,如空格%20
curl --data-urlencode "name=I am Daniel" //www.wangjunneil.com

模拟上传文件

# <form method="POST" enctype='multipart/form-data' action="upload.cgi">
#   <input type=file name="upload"/>
#   <input type=submit name="press" value="OK"/>
# </form>

curl --form upload=@localfilename --form press=OK //www.wangjunneil.com/upload.cgi

自定义HTTP消息头

# Referer
curl --referer //www.baidu.com //www.wangjunneil.com
# User Agent
curl --user-agent "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" //www.wangjunneil.com
# 自定义Header内容
curl --header "Host: www.wangjunneil.com" //www.wangjunneil.com
# 自定义提交内容和内容类型
curl --data "<xml>" --header "Content-Type: text/xml"  --request PROPFIND url.com
# 增加cooke
curl --cookie "name=zhangsan" //www.wangjunneil.com

其他一些使用

# 监控网页的响应时间
curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" //www.baidu.com
# 监控站点可用性
curl -o /dev/null -s -w %{http_code} //www.baidu.com
# 下载文件
curl -o ideaIU.dmg //download-cf.jetbrains.com/idea/ideaIU-15.0.1-custom-jdk-bundled.dmg
# 断点续传文件
curl -c -# -o ideaIU.dmg //download-cf.jetbrains.com/idea/ideaIU-15.0.1-custom-jdk-bundled.dmg
版权所有,本作品采用知识共享署名-非商业性使用 3.0 未本地化版本许可协议进行许可。转载请注明出处:https://www.wangjun.dev//2015/11/linux-curl-command/

Related posts