前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >cURL-7.72.0(scheme杂项补充)

cURL-7.72.0(scheme杂项补充)

作者头像
云深无际
发布2020-10-23 10:09:14
5560
发布2020-10-23 10:09:14
举报
文章被收录于专栏:云深之无迹云深之无迹

对于温柔,每个人有不同的理解与定义。一个微笑是温柔,一句客气的话是温柔,一个动作也是温柔。世上温柔之人千千万万,不知哪种温柔俘获哪种温柔的你。只是,远远看去,我们都是生命中承载善的一种光点,零零星星,却又万万千千。 小马

URL通配

有时你会有一组大致相同的URL,它们只有一小部分不同。不同的部分可能是一组数字或一组名字。curl提供了“通配”(globbing)的方式来指定这类URL。

curl使用保留符号[]和{}进行通配,它们一般不是合法URL的组成部分(IPv6地址除外,但curl可以很好地处理它们)。如果通配影响到了你,可以使用-g或--globoff禁用它

虽然curl中与传输相关的大多数功能是由libcurl库提供的,但URL通配功能并不是!

数值范围

你可以使用[N-M]语法来指定一个数值范围,其中N是起始索引,M是结束索引(包括M在内)。例如,你可以请求100个以数字命名的图像。

curl -O http://example.com/[1-100].png

它甚至可以使用零作为前缀,如三位数的数字。

curl -O http://example.com/[001-100].png

如果只想请求数字为偶数的图像,那么可以指定步进(step counter)。以下示例的范围为0~100,步进为2。

        curl -O http://example.com/[0-100:2].png

字母范围

curl也可以处理字母范围,例如,有些网页会包含a~z的部分。

curl -O http://example.com/section[a-z].html

列表

有时URL的不同部分不会遵循这些简单的模式,那么你可以指定完整的列表,但要放在花括号,而不是中括号中。

 curl -O http://example.com/{one, two, three, alpha, beta}.html

组合

你可以在同一个URL中使用多个通配。例如,如果要下载Ben、Alice和Frank的图像,并且需要100×100和1000×1000的分辨率,那么可以使用以下方式。

  curl -O http://example.com/{Ben, Alice, Frank}-{100x100,1000x1000}.jpg

如果要下载棋盘的所有图像,则需要两个0~7的索引。

 curl -O http://example.com/chess-[0-7]x[0-7].jpg

当然,你也可以将范围混在一起。例如,获取Web服务器和邮件服务器一周内的日志。

curl -O http://example.com/{web, mail}-log[0-6].txt

输出变量

在前面的所有通配示例中,我们使用了-O或--remote-name选项,因此curl将使用URL中的文件名来保存目标文件。

但有时这样还不够。假设你正在下载多个文件,并希望将它们保存到不同的子目录中,或者以不同的名称保存文件。curl为这些情况提供了解决方案:输出文件名变量。

URL中的每个通配都对应一个单独的变量,可以通过 ’#[num]’ 来引用,即在 ’#’ 后面跟上与通配对应的数字,从1(对应第一个通配)开始,以最后一个通配结束。

保存两个不同网站的主页:

 curl http://{one, two}.example.com -o "file_#1.txt"

将输出内容保存到子目录中:

      curl http://{site, host}.host[1-5].example.com -o "subdir/#1_#2"

列出所有的命令行选项

curl有200多个命令行选项,而且更多选项正在不断被添加进来。选项的数量可能在未来几年内达到250个。

为了找出特定操作需要用到的选项,你可以先列出所有可用选项,浏览选项列表,从中选择自己需要的选项。curl --help或curl -h将列出所有选项,并提供简要的说明。不过,如果不知道自己需要什么样的选项,这个列表对你来说可能还不够。

你可以使用curl --manual输出curl的整个手册页以及常见的用例教程。这是一份非常全面且详尽的文档,说明了每个选项的用法,总量达数千行。但浏览整个手册也是件烦琐的事,因此我们建议使用搜索功能。一些人更喜欢手册页的Web版本

https://curl.haxx.se/docs/manpage.html
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云深之无迹 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档