curl命令

curl 是一个工具,用于传输来自服务器或者到服务器的数据。向服务器传输数据或者获取来自服务器的数据

可支持的协议有:DICT、FILE、FTP、FTPS、GOPHER、HTTP、HTTPS、IMAP、IMAPS、LDAP、LDAPS、POP3、POP3S、RTMP、RTSP、SCP、SFTP、SMTP、SMTPS、TELNET和TFTP

curl参数

-#

显示为一个简单的进度条;而不是标准的、具有更多信息的进度表

-0

SSL:强制curl使用HTTP 1.0发出请求,而不是使用其内部首选的HTTP 1.1

-1

SSL:强制curl使用TLS 1.x 版本,当与远程TLS服务进行协商时。可以使用选项 --tlsv1.0、--tlsv1.1和 --tlsv1.2来更精确地控制TLS版本

-2

SSL:强制curl使用TLS 2 版本,当与远程TLS服务进行协商时

-3

SSL:强制curl使用TLS 3 版本,当与远程TLS服务进行协商时

-4

如果curl能够将一个地址解析为多个IP版本(比如它支持ipv4和ipv6),那么这个选项告诉curl只将名称解析为IPv4地址

-6

如果curl能够将一个地址解析为多个IP版本(比如它支持ipv4和ipv6),那么这个选项告诉curl只将名称解析为IPv6地址

-a

FTP/SFTP)当在上传中使用时,这将告诉curl追加到目标文件而不是覆盖它。如果文件不存在,将创建它。注意,一些SSH服务器(包括OpenSSH)会忽略此标志

-A

指定要发送到HTTP服务端的User-Agent字符串;告诉curl使用HTTP基本身份验证。这是默认的
HTTP:将数据作为 cookie 传递给HTTP服务器

指定希望curl在完成操作后将所有cookie写入哪个文件

Curl写之前从指定文件读取的所有cookie,以及从远程服务端接收的所有cookie。如果没有已知的cookie,则不会写入任何文件。该文件将使用Netscape cookie文件格式编写。如果你将文件名设置为单个破折号 "-" ,cookie将被标准输出

-d

使用该选项,那么默认请求方式为 POST

-D

将响应协议头写入指定的文件

-e

从哪个页面跳转过来的信息发送到HTTP服务器

-f

HTTP:在服务器错误上静默失败;完全没有输出

-F

这允许curl模拟用户按下submit按钮后填充的表单

-g

这个选项关闭了"URL全局解析器"

-G

使用此选项时,将使所有使用 -d, --data 或 --data-binary 指定的数据在HTTP GET请求中使用,而不是在POST请求中使用。数据将被追加到URL的一个 '?' 的分隔符后

-H

要发送到服务端的自定义请求头

-i

在输出的内容中包含HTTP 头信息

-I

(HTTP/FTP/FILE)只获取HTTP头文件。在FTP或FILE 文件上使用时,curl只显示文件大小和最后修改时间

-k

允许curl执行不安全的SSL连接和传输

-L

(HTTP/HTTPS) 跟踪重定向 如果服务器报告请求页面已移动到另一个位置,此选项将使curl在新位置上重做请求

-m

允许整个操作花费的最大时间(以秒为单位)

-o

输出到一个文件,而不是标准输出

-O

写入到本地文件,名称与远程文件的名称相同

例如:curl -O https://www.baidu.com/index.html

-r

(HTTP/FTP/SFTP/FILE)从HTTP/1.1、FTP或SFTP服务器或本地文件检索字节范围范围可以通过多种方式指定。用于分段下载

-R

使curl尝试获取远程文件的时间戳,如果可用,则使本地文件获得相同的时间戳

-s

静默或静音模式。不显示进度表/条或错误消息

-S

当与 -s 一起使用时,如果curl失败,curl将显示一条错误消息

-T

这将指定的本地文件传输到远程URL。如果指定的URL中没有文件部分,Curl将附加本地文件名

-w

在完成和成功操作后要在stdout上显示什么

-x

使用指定的HTTP代理。如果没有指定端口号,则假定它位于端口1080

-X

指定与HTTP服务器通信时的请求方式。默认GET

 

你可能感兴趣的:(linux,curl)