Linux 命令

命令格式

curl [options] [URL...]

命令参数

-0, --http1.0
  强制使用 HTTP/1.0 发送请求

-A, --user-agent
  指定用户代理

-b/--cookie <name=string/file>
  传递 cookie

--basic

  启用 HTTP 基本认证,这是默认选项

-c, --cookie-jar <file name>
  完成操作后,将 cookie 写入到指定的文件

-C, --continue-at <offset>
  断点续传

-d, --data <data>
  以 POST 方式向 HTTP 服务器发送指定的数据

--data-ascii <data>
  -d/--data 选项的别名

--data-binary <data>
  以 POST 方式向 HTTP 服务器发送指定的二进制数据

--digest

  启用 HTTP 摘要认证

-D/--dump-header <file>
  将响应的头部信息输出到指定的文件

-e, --referer <URL>
  指定 HTTP 请求的 Referer 头部信息

-G, --get
  与 -d 选项一起使用时,以 GET 方式向 HTTP 服务器发送指定的数据

-h, --help
  显示帮助信息

-H, --header <header>
  传递额外的头信息

-i, --include
  输出信息时包含协议的头部信息

-I, --head
  只显示文档信息

-k, --insecure
  允许不使用 CA 证书执行 SSL 连接

--limit-rate <speed>
  限定最大的传输速率

-L, --location
  重定向

-o, --output <file>
  将响应消息写到文件而不是标准输出

-O, --remote-name
  将响应消息写到文件,文件名与远程文件一致

--trace <file>
  将调试信息输出到指定的文件

--trace-ascii <file>
  与trace相同,但是不显示十六进制信息

-x, --proxy <proxyhost[:port]>
  指定 HTTP 代理

-X, --request <command>
  指定请求方法,而不是默认的 GET 方法(FTP 协议默认的请求方法是 LIST)

-u, --user <user:password>
  指定用户名和密码

-U, --proxy-user <user:password>
  指定代理的用户名和密码

-v, --verbose
  显示更为详细的通信信息,如果觉得信息不够详细,可以考虑使用 --trace 或 --trace-ascii 选项

-V, --version
  显示版本信息

实例

a) 查看网页源码

curl http://www.example.com/

b) 保存网页源码

curl -o example.html http://www.example.com/

c) 显示 HTTP 响应的头部信息

curl -i http://www.iana.org/domains/example

d) 发送 HTTP POST 请求

curl -d "username=huey2672&password=123456" http://hello.com/accounts/login/

e) 发送 HTTP GET 请求

curl -G -d "client_id=gFN5VBsozdvu8hBZzHsbrmlK&q=hello&from=en&to=zh" http://openapi.baidu.com/public/2.0/translate/dict/simple

 f) 添加额外的头部信息

curl -H "Content-Type: application/json" http://www.example.com/

 g) 指定源地址

curl -e http://www.baidu.com/ http://www.example.com/

h) 指定 HTTP 客户端信息

curl -A "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)" http://www.example.com/

i) 使用 cookie

curl -b "username=root; password=123456" http://www.example.com/
curl -b cookie.txt http://www.example.com/

j) 输出重定向后的响应信息

curl -L http://www.iana.org/domains/example

k) 若需要 HTTP 认证,指定用户名和密码

curl -u name:password http://www.example.com/
原文地址:https://www.cnblogs.com/huey/p/4383539.html