--abstract-unix-socket <path>
通过抽象 Unix 域套接字连接
--alt-svc <file name>
启用 alt-svc 并使用此缓存文件
--anyauth
选择任意身份验证方法
-a, --append
上传时追加到目标文件
--aws-sigv4 <provider1[:provider2[:region[:service]]]>
使用 AWS V4 签名认证
--basic
使用 HTTP 基本认证
--cacert <file>
用于验证对等方的 CA 证书
--capath <dir>
用于验证对等方的 CA 目录
-E, --cert <certificate[:password]>
客户端证书文件和密码
--cert-status
通过 OCSP-staple 验证服务器证书的状态
--cert-type <type>
证书类型 (DER/PEM/ENG/P12)
--ciphers <list of ciphers>
使用的 SSL 密码列表
--compressed
请求压缩响应
--compressed-ssh
启用 SSH 压缩
-K, --config <file>
从文件读取配置
--connect-timeout <fractional seconds>
允许的最大连接时间
--connect-to <HOST1:PORT1:HOST2:PORT2>
连接到主机
-C, --continue-at <offset>
续传偏移量
-b, --cookie <data|filename>
从字符串/文件发送 Cookie
-c, --cookie-jar <filename>
操作后将 Cookie 写入 <filename>
--create-dirs
创建必要的本地目录层次结构
--create-file-mode <mode>
创建文件的模式
--crlf
上传时将 LF 转换为 CRLF
--crlfile <file>
使用此 CRL 列表
--curves <algorithm list>
(EC) 请求的 TLS 密钥交换算法
-d, --data <data>
HTTP POST 数据
--data-ascii <data>
HTTP POST ASCII 数据
--data-binary <data>
HTTP POST 二进制数据
--data-raw <data>
HTTP POST 数据,允许 ‘@’
--data-urlencode <data>
HTTP POST URL 编码数据
--delegation <LEVEL>
GSS-API 委派权限
--digest
使用 HTTP 摘要认证
-q, --disable
禁用 .curlrc
--disable-eprt
禁止使用 EPRT 或 LPRT
--disable-epsv
禁止使用 EPSV
--disallow-username-in-url
禁止在 URL 中使用用户名
--dns-interface <interface>
用于 DNS 请求的接口
--dns-ipv4-addr <address>
用于 DNS 请求的 IPv4 地址
--dns-ipv6-addr <address>
用于 DNS 请求的 IPv6 地址
--dns-servers <addresses>
使用的 DNS 服务器地址
--doh-cert-status
通过 OCSP-staple 验证 DoH 服务器证书的状态
--doh-insecure
允许不安全的 DoH 服务器连接
--doh-url <URL>
通过 DoH 解析主机名
-D, --dump-header <filename>
将接收到的头写入 <filename>
--egd-file <file>
用于随机数据的 EGD 套接字路径
--engine <name>
使用的加密引擎
--etag-compare <file>
从文件传递 ETag 作为自定义头
--etag-save <file>
从请求中解析 ETag 并保存到文件
--expect100-timeout <seconds>
等待 100-continue 的时间
-f, --fail
在 HTTP 错误时快速失败且无输出
--fail-early
在第一个传输错误时失败,不继续
--fail-with-body
在 HTTP 错误时失败但保存正文
--false-start
启用 TLS False Start
-F, --form <name=content>
指定多部分 MIME 数据
--form-escape
使用反斜杠转义多部分表单字段/文件名
--form-string <name=string>
指定多部分 MIME 数据
--ftp-account <data>
账户数据字符串
--ftp-alternative-to-user <command>
替换 USER [name] 的字符串
--ftp-create-dirs
如果不存在则创建远程目录
--ftp-method <method>
控制 CWD 的使用
--ftp-pasv
使用 PASV/EPSV 而不是 PORT
-P, --ftp-port <address>
使用 PORT 而不是 PASV
--ftp-pret
在 PASV 之前发送 PRET
--ftp-skip-pasv-ip
跳过 PASV 的 IP 地址
--ftp-ssl-ccc
认证后发送 CCC
--ftp-ssl-ccc-mode <active/passive>
设置 CCC 模式
--ftp-ssl-control
要求 FTP 登录使用 SSL/TLS,传输时清除
-G, --get
将 POST 数据放入 URL 并使用 GET
-g, --globoff
禁用使用 {} 和 [] 的 URL 序列和范围
--happy-eyeballs-timeout-ms <milliseconds>
尝试 IPv4 之前的 IPv6 时间
--haproxy-protocol
发送 HAProxy PROXY 协议 v1 头
-I, --head
仅显示文档信息
-H, --header <header/@file>
传递自定义头到服务器
-h, --help <category>
获取命令帮助
--hostpubmd5 <md5>
可接受的主机公钥 MD5 哈希
--hostpubsha256 <sha256>
可接受的主机公钥 SHA256 哈希
--hsts <file name>
启用 HSTS 并使用此缓存文件
--http0.9
允许 HTTP 0.9 响应
-0, --http1.0
使用 HTTP 1.0
--http1.1
使用 HTTP 1.1
--http2
使用 HTTP 2
--http2-prior-knowledge
不使用 HTTP/1.1 升级直接使用 HTTP 2
--http3
使用 HTTP v3
--http3-only
仅使用 HTTP v3
--ignore-content-length
忽略远程资源的大小
-i, --include
在输出中包含协议响应头
-k, --insecure
允许不安全的服务器连接
--interface <name>
使用网络接口 (或地址)
-4, --ipv4
将名称解析为 IPv4 地址
-6, --ipv6
将名称解析为 IPv6 地址
--json <data>
HTTP POST JSON 数据
-j, --junk-session-cookies
忽略从文件读取的会话 Cookie
--keepalive-time <seconds>
保持活动探测的间隔时间
--key <key>
私钥文件名
--key-type <type>
私钥文件类型 (DER/PEM/ENG)
--krb <level>
启用 Kerberos 并设置安全级别
--libcurl <file>
转储此命令行的 libcurl 等效代码
--limit-rate <speed>
将传输速度限制为 RATE
-l, --list-only
仅列出模式
--local-port <num/range>
强制使用本地端口号范围
-L, --location
跟随重定向
--location-trusted
类似于 --location
,并向其他主机发送认证信息
--login-options <options>
服务器登录选项
--mail-auth <address>
原始邮件的发件人地址
--mail-from <address>
从此地址发送邮件
--mail-rcpt <address>
向此地址发送邮件
--mail-rcpt-allowfails
允许 RCPT TO 命令对某些收件人失败
-M, --manual
显示完整手册
--max-filesize <bytes>
下载的最大文件大小
--max-redirs <num>
允许的最大重定向次数
-m, --max-time <fractional seconds>
允许的最大传输时间
--metalink
将给定的 URL 作为 metalink XML 文件处理
--negotiate
使用 HTTP Negotiate (SPNEGO) 认证
-n, --netrc
必须读取 .netrc 以获取用户名和密码
--netrc-file <filename>
指定 netrc 文件
--netrc-optional
使用 .netrc 或 URL
-:, --next
使下一个 URL 使用其单独的选项集
--no-alpn
禁用 ALPN TLS 扩展
-N, --no-buffer
禁用输出流的缓冲
--no-clobber
不覆盖已存在的文件
--no-keepalive
禁用连接上的 TCP keepalive
--no-npn
禁用 NPN TLS 扩展
--no-progress-meter
不显示进度条
--no-sessionid
禁用 SSL 会话 ID 重用
--noproxy <no-proxy-list>
不使用代理的主机列表
--ntlm
使用 HTTP NTLM 认证
--ntlm-wb
使用 winbind 进行 HTTP NTLM 认证
--oauth2-bearer <token>
OAuth 2 Bearer 令牌
-o, --output <file>
写入文件而不是标准输出
--output-dir <dir>
保存文件的目录
-Z, --parallel
并行执行传输
--parallel-immediate
不等待多路复用(与 --parallel
一起使用)
--parallel-max <num>
并行传输的最大并发数
--pass <phrase>
私钥的密码短语
--path-as-is
不压缩 URL 路径中的 ..
序列
--pinnedpubkey <hashes>
用于验证对等方的公钥文件/哈希
--post301
在跟随 301 后不切换到 GET
--post302
在跟随 302 后不切换到 GET
--post303
在跟随 303 后不切换到 GET
--preproxy [protocol://]host[:port]
首先使用此代理
-#, --progress-bar
以条形图显示传输进度
--proto <protocols>
启用/禁用协议
--proto-default <protocol>
对于缺少方案的 URL 使用协议
--proto-redir <protocols>
在重定向时启用/禁用协议
-x, --proxy [protocol://]host[:port]
使用此代理
--proxy-anyauth
选择任意代理认证方法
--proxy-basic
在代理上使用基本认证
--proxy-cacert <file>
用于验证代理的 CA 证书
--proxy-capath <dir>
用于验证代理的 CA 目录
--proxy-cert <cert[:passwd]>
设置代理的客户端证书
--proxy-cert-type <type>
HTTPS 代理的客户端证书类型
--proxy-ciphers <list>
代理使用的 SSL 密码列表
--proxy-crlfile <file>
设置代理的 CRL 列表
--proxy-digest
在代理上使用摘要认证
--proxy-header <header/@file>
向代理传递自定义头
--proxy-insecure
在 HTTPS 代理连接中不验证代理
--proxy-key <key>
HTTPS 代理的私钥
--proxy-key-type <type>
代理的私钥文件类型
--proxy-negotiate
在代理上使用 HTTP Negotiate (SPNEGO) 认证
--proxy-ntlm
在代理上使用 NTLM 认证
--proxy-pass <phrase>
HTTPS 代理的私钥密码短语
--proxy-pinnedpubkey <hashes>
用于验证代理的公钥文件/哈希
--proxy-service-name <name>
SPNEGO 代理服务名称
--proxy-ssl-allow-beast
允许 HTTPS 代理的安全漏洞以提高互操作性
--proxy-ssl-auto-client-cert
为代理使用自动客户端证书(Schannel)
--proxy-tls13-ciphers <ciphersuite list>
TLS 1.3 代理密码套件
--proxy-tlsauthtype <type>
HTTPS 代理的 TLS 认证类型
--proxy-tlspassword <string>
HTTPS 代理的 TLS 密码
--proxy-tlsuser <name>
HTTPS 代理的 TLS 用户名
--proxy-tlsv1
为 HTTPS 代理使用 TLSv1
-U, --proxy-user <user:password>
代理的用户名和密码
--proxy1.0 <host[:port]>
在给定端口上使用 HTTP/1.0 代理
-p, --proxytunnel
通过 HTTP 代理隧道操作(使用 CONNECT)
--pubkey <key>
SSH 公钥文件名
-Q, --quote <command>
在传输前向服务器发送命令
--random-file <file>
用于读取随机数据的文件
-r, --range <range>
仅检索范围内的字节
--rate <max request rate>
串行传输的请求速率
--raw
执行 HTTP “raw”;不进行传输解码
-e, --referer <URL>
引用 URL
-J, --remote-header-name
使用头提供的文件名
-O, --remote-name
将输出写入与远程文件同名的文件
--remote-name-all
对所有 URL 使用远程文件名
-R, --remote-time
设置本地输出文件的远程时间
--remove-on-error
在错误时删除输出文件
-X, --request <method>
指定使用的请求方法
--request-target <path>
指定此请求的目标
--resolve <[+]host:port:addr[,addr]...>
将主机+端口解析为此地址
--retry <num>
在发生临时问题时重试请求
--retry-all-errors
重试所有错误(与 --retry
一起使用)
--retry-connrefused
在连接被拒绝时重试(与 --retry
一起使用)
--retry-delay <seconds>
重试之间的等待时间
--retry-max-time <seconds>
仅在此期间内重试
--sasl-authzid <identity>
SASL PLAIN 认证的身份
--sasl-ir
在 SASL 认证中启用初始响应
--service-name <name>
SPNEGO 服务名称
-S, --show-error
即使使用 -s
也显示错误
-s, --silent
静默模式
--socks4 <host[:port]>
在指定的主机和端口上使用 SOCKS4 代理
--socks4a <host[:port]>
在指定的主机和端口上使用 SOCKS4a 代理
--socks5 <host[:port]>
在指定的主机和端口上使用 SOCKS5 代理
--socks5-basic
为 SOCKS5 代理启用用户名/密码认证
--socks5-gssapi
为 SOCKS5 代理启用 GSS-API 认证
--socks5-gssapi-nec
兼容 NEC SOCKS5 服务器
--socks5-gssapi-service <name>
GSS-API 的 SOCKS5 代理服务名称
--socks5-hostname <host[:port]>
SOCKS5 代理,传递主机名到代理
-Y, --speed-limit <speed>
停止低于此速度的传输
-y, --speed-time <seconds>
在此时间后触发 speed-limit
中止
--ssl
尝试 SSL/TLS
--ssl-allow-beast
允许安全漏洞以提高互操作性
--ssl-auto-client-cert
使用自动客户端证书(Schannel)
--ssl-no-revoke
禁用证书吊销检查(Schannel)
--ssl-reqd
要求 SSL/TLS
--ssl-revoke-best-effort
忽略缺失/离线的证书 CRL 分发点
-2, --sslv2
使用 SSLv2
-3, --sslv3
使用 SSLv3
--stderr <file>
将 stderr 重定向到文件
--styled-output
为 HTTP 头启用样式化输出
--suppress-connect-headers
抑制代理 CONNECT 响应头
--tcp-fastopen
使用 TCP 快速打开
--tcp-nodelay
使用 TCP_NODELAY 选项
-t, --telnet-option <opt=val>
设置 telnet 选项
--tftp-blksize <value>
设置 TFTP BLKSIZE 选项
--tftp-no-options
不发送任何 TFTP 选项
-z, --time-cond <time>
基于时间条件传输
--tls-max <VERSION>
设置允许的最大 TLS 版本
--tls13-ciphers <ciphersuite list>
使用的 TLS 1.3 密码套件
--tlsauthtype <type>
TLS 认证类型
--tlspassword <string>
TLS 密码
--tlsuser <name>
TLS 用户名
-1, --tlsv1
使用 TLSv1.0 或更高版本
--tlsv1.0
使用 TLSv1.0 或更高版本
--tlsv1.1
使用 TLSv1.1 或更高版本
--tlsv1.2
使用 TLSv1.2 或更高版本
--tlsv1.3
使用 TLSv1.3 或更高版本
--tr-encoding
请求压缩传输编码
--trace <file>
将调试跟踪写入文件
--trace-ascii <file>
类似于 --trace
,但没有十六进制输出
--trace-time
在跟踪/详细输出中添加时间戳
--unix-socket <path>
通过此 Unix 域套接字连接
-T, --upload-file <file>
将本地文件传输到目标
--url <url>
要处理的 URL
--url-query <data>
添加 URL 查询部分
-B, --use-ascii
使用 ASCII/文本传输
-u, --user <user:password>
服务器用户名和密码
-A, --user-agent <name>
向服务器发送 User-Agent 名称
-v, --verbose
使操作更详细
-V, --version
显示版本号并退出
-w, --write-out <format>
完成后使用输出格式
--xattr
将元数据存储在扩展文件属性中