curl入门

1,085 阅读2分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

curl命令大家都很熟悉了,每次要下载一个小应用,一般是命令行应用,都会在对应的网站上看到一行命令,比如:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

这是著名的Mac端包管理工具brew的下载安装方式,我们熟悉的copy到本地命令行,然后等待执行完就好了。那么curl到底是什么来头呢?

首先是命名,这个工具用于上传和下载URL指定的数据,c第一层意思是see,就是用户可以看到url和url的返回,第二层是client,这是一个客户端的程序,用于请求服务端。基于此,作者就把这个程序命名为curl,读作“磕”,因为英语中一般c的发音就是“磕”。

下面简单介绍curl命令的用法。 首先必须以curl为开头,这是所有的命令行工具默认的要求。然后便是自定义的参数:

curl -v https://www.baidu.com

-v代表详细模式(verbose),执行完的效果如下:

image.png 这里打印了请求到该地址的详细信息。如果觉得信息不够全面,可以加-L:

curl -vL https://www.baidu.com
curl -v -L https://www.baidu.com
curl https://www.baidu.com -Lv

以上三种位置都是可以的,但个人建议还是第一种比较合理。

curl也是支持批量操作的:

curl -O http://download.com/[1-100].gif

这个操作会把url是1-100的资源全部下载下来,-O表示下面目标地址的资源。

curl关心所有与网络协议传输相关的东西,curl可以被完美地应用在脚本或自动化程序中。它不提供GUI或UI,只支持输入文本和输出文本。可以到项目的官方github页学习更多:github.com/bagder/ever…