curl手册

22 篇文章 0 订阅
2 篇文章 0 订阅

基本上是把curl的手册照着翻译了一遍。

语法 curl [options / URLs]

描述

curl 工具可用来与服务器传输数据,支持众多协议:DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP。
该命令可在无需用户交互的情况下完成任务。

URL

  • URL 的具体语法取决于使用的协议。

  • 可以用花括号指定多个URL
    http://site.{one,two,three}.com

  • 可以用方括号指定序列

    ftp://ftp.example.com/file[1-100].txt
    ftp://ftp.example.com/file[001-100].txt
    ftp://ftp.example.com/file[a-z].txt

  • 序列不能嵌套,但可以先后指定多次
    http://example.com/archive[1996-1999]/vol[1-4]/part{a,b,c}.html

  • 可以指定任意数量的url,curl命令会逐个处理。可以用任意顺序混合URL和命令行选项

  • 方括号序列语法,还可以指定步长

    http://example.com/file[1-100:10].txt
    http://example.com/file[a-z:2].txt

  • 方括号和花括号是curl自身解析的,所以必要的时候用双引号括起来,避免Shell解析,类似的字符还有 *?&

  • 如果省略协议,则默认值是 HTTP 协议,但curl会先尝试基于常用主机名签注猜测合适的协议,并且最终的
    比如,如果主机名以 ftp. 开头,则curl认为这是个 ftp 协议。

  • curl 会在允许的情况下重用连接,如此从同一个服务器下载多个文件的时候就省去了创建连接的时间

进度条

curl 默认会显示进度条。
但如果有需要在终端显示的响应内容,则会关闭进度条,防止把内容搞混乱,此时使用 -o --output 选项
指示curl把相应内容写入文件则curl又会显示进度条。
使用 -# --progress-bar 使用另一种风格的进度条。
-s --silent 禁用进度条。

选项

选项以一个或者两个连字符开头,一个连字符的是短格式,两个连字符的是长格式。
大多数选项需要后面跟着选项值。
短个是选项和值之间的空格可以省略,但建议不要省略;长格式选项和值之间的空格必须保留。

少数选项不需要指定值,它们的短格式版本可以合并,比如 -O -L -v 可以写作-OLv

布尔选项 --option 开启,对应使用 --no-option 关闭。

-K --config file

指定从文本文件中读取curl的选项,就好像把这些选项直接放到命令行上是一个效果。
选项文件中,选项和对应的值必须位于同一行。
选项和值之间以空格、冒号或等号分隔。
长选项可以省略开头的两个连字符,此时必须用冒号或等号作分隔符。

如果参数值中包含空格(或者参数以冒号、等号开头),则可以把参数值用引号括起。
在双引号中,有这个几个转移序列: \, ", \t, \n, \r, \v。其余字符前面的反斜杠会
被忽略。

井号开头的是注释。

文件名 - 表示标准输入。

记住,每个物理行只指定一个选项。

如果要在选项文件中指定url,需要使用这个选项 --url,而不能简单地直接把url写成一行。

curl启动时,会在如下位置查找默认配置文件(除非指定-q或–disable选项):

  1. 先确定“家目录”:依次检查环境变量 CURL_HOME, HOME, 如果失败,则
    • unix 上使用 getpwuid() 获取用户名,
    • windows上继续依次使用 APPDATA和’%USERPROFILE%\Application Data’。
  2. 如果上一步找到了家目录,则使用其中的 .curlrc 作为配置文件,如果没有找到则,
    • unix 上,就不找了
    • windows 上,多尝试 curl 的安装目录。

举个例子

# --- Example file ---
# this is a comment
url = "example.com"
output = "curlhere.html"
user-agent = "superagent/1.0"

# and fetch another URL too
url = "example.com/docs/manpage.html"
-O
referer = "http://nowhereatall.example.com/"
# --- End of example file ---

待续……

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值