命令格式

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

Linux 命令 - curl: transfer a URL相关推荐

  1. linux 命令 curl 详解

    一.curl 介绍 curl是一个命令行访问URL的计算机逻辑语言的工具,发出网络请求,然后得到数据并提取出,显示在标准输出stdout上面; 可以用它来构造http request报文,curl(C ...

  2. linux命令——curl常用命令使用方法简单了解

    curl是什么? 全称CommandLine URL 或 CommandLine Uniform Resource Locator,在命令行方式下工作,利用URL的语法进行数据的传输或者文件的传输.是 ...

  3. 使用Linux命令cURL实现文件定时上传到ftp服务器的程序

    前言 前段时间群里讨论,想实现某个文件定时上传到服务器要怎么来实现.我记得之前做过 一个项目:为高通的iot模组编写FOTA功能:实现模组可以远程下载升级镜像包,实现版本升级功能.并当时使用的一个超级 ...

  4. curl http header_利用Linux命令cURL实现文件定时上传到ftp服务器的小程序,实用

    前言 前段时间群里讨论,想实现某个文件定时上传到服务器要怎么来实现.我记得之前做过 一个项目:为高通的iot模组编写FOTA功能:实现模组可以远程下载升级镜像包,实现版本升级功能.并当时使用的一个超级 ...

  5. Linux命令CURL用法

    Curl是一个命令行方式下传输数据的开源传输工具,支持多种协议包括:FTP,HTTP,HTTPS,IMAP,POP3,TELNET等.同样支持HTTP POST方法,PUT方法,FTP上传,cooki ...

  6. Linux命令curl详解(一)

    一.curl是什么? 用URL传输数据的命令行工具和库,支持以下协议:DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LD ...

  7. 每天一个linux命令-curl命令

    下载文件 如果我们想要下载文件,而不是查看,那么可以使用如下命令: curl -O http://mif.polimercolor.ru/mifsoft/MDict.zip 以上命令会下载文件并以原名 ...

  8. linux命令总结(持续更新中····)

    linux命令 ip add 查看linux系统里的ip地址 address ip地址是标识每台电脑的地址,用来通信的地址,相当于我们的手机号码 [root@liwenqian ~]# ip add ...

  9. linux命令学习之:curl

    curl命令是一个利用URL规则在命令行下工作的开源文件传输工具.它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具.作为一款强力工具,curl支持包括HTTP.HTTPS ...

最新文章

  1. 休斯顿大学研究人员构建具有神经功能的软体机器人
  2. 前后端分离业务逻辑常用封装函数(一)
  3. 4.WaitForSingleObject函数分析
  4. 2019b官方手册中文版_数据科学|「最全」实至名归,NumPy 官方早有中文教程,结合深度学习,还有防脱发指南...
  5. Linux下排查进程占用cpu高的问题
  6. Android之Bitmap的内存优化方案总结
  7. xshell安装mysql步骤_mysql主从复制
  8. python实训内容_Python实验课:Python元组数据及其运算
  9. HTTP协议 (三) 压缩
  10. springmvc获取原生servletAPI
  11. hive get_json_object json_tuple json解析详解
  12. linux+默认启动windows系统,windows liunx两个系统修改默认启动项
  13. Java设计模式之工厂模式
  14. Mac不用Boot Camp 安装双系统
  15. Python实现最近邻nearest、双线性bilinear、双三次bicubic插值
  16. dpi、ppi、apm是什么
  17. golang学习(一)—— 简介
  18. imx6ul-正点原子-imx6ul学习笔记(5)
  19. 专升本第一讲(计算机的“前世今生”)
  20. C++——迪杰斯特拉算法弗洛伊德算法(DijkstraFloyd)for Neuedu

热门文章

  1. python注册登陆程序未响应_SpringBoot实现登录注册常见问题解决方案
  2. c语言 枚举类型 uint32_最全面C语言数据基本数据类型解析
  3. 新一代云原生监控系统Prometheus--理解数据模型/指标/标签/PromQL/Exporter
  4. Spark源码分析之Worker启动通信机制
  5. Scala 语法基础
  6. JDK1.8 IdentityHashMap
  7. (16)VHDL实现半加器与全加器
  8. FPGA双沿采样之Verilog HDL实现
  9. linux路由内核实现分析(三)---路由查找过程
  10. mysql的服务器编号_mysql主从服务器配置.doc