linux-curl-command

CURL 是服务器上用于数据传输的命令行工具。CURL 支持许多协议,例如: DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, FTP。

CURL 提供100多个命令行选项,在本教程中,我们将介绍一些基本但有用的选项。

(1) 下载并将输出存储在文件中

把下载的数据在终端输出

$ curl  http://www.cricbuzz.com

将输出结果保存到文件中

$ curl [url] > [name-of -output-file]

$ curl http://www.cricbuzz.com > cricbuzz.html

curl-command-storefile

或者,还可以使用 -o 选项将输出保存到特定的文件

$ curl -o [name-of-output-file] [url-name]

示例如下:

$ curl -o cricbuzz.html http://www.cricbuzz.com

还存在一个 -O 选项,允许将下载的数据保存在与远程文件名称相同的文件中。

$ curl -O [url]

示例如下:

$ curl -O https://curl.haxx.se/docs/manpage.html

上面的命令将下载的数据保存在一个名为 manpage.html 的文件中

(2) 静默命令输出

如果您不希望 curl 在输出中显示进度细节和错误,那么您可以使用 -s 选项

例如,考虑以下 curl 抛出错误的情况

$ curl https://lti.com

curl-command-silent

要消除此类错误,使用 -s 选项

$ curl -s  https://lti.com

curl-command-silent-s

如果您希望 curl 只显示错误而不显示任何其他细节(如默认情况下显示的进度细节),请使用 -s 选项和 -S 选项

$ curl -s -S https://www.lti.com

curl-command-with-s-S-option

(3) 下载多个文件

使用该工具,您可以通过一个命令下载多个文件

$ curl -o/O [url1] -o/O [url2]

示例如下:

$ curl  -O  https://curl.haxx.se/docs/manpage.html  -O https://curl.haxx.se/docs/manual.html

(4) 处理 URL 重定向

假设,您向 Curl 命令提供了一个 URL,但是 web 页面不存在 (比如,它已经移动到其他位置)。在这种情况下,您可以使用 -L 命令行选项,这将使 curl 在新位置上重做请求。

考虑这样一种情况,在 Curl 中抛出一个错误,例如:页面移动

curl-command-withoutL

但如果您通过 web 浏览器访问网页,则会观察到重定向。为了确保 Curl 也处理这个重定向,使用 -L 命令行选项。

$ curl -L [url]

示例如下:

$ curl -L uber.com

curl-command-with-L

(5) 获取详细信息(-v)

使用 -v 选项,可以检索关于 Curl 操作的详细信息

以 > 和 < 开头的行分别代表 Curl 发送和接收的报头数据,* 表示工具提供的附加信息,示例如下:

$ curl -v https://curl.haxx.se/docs/manpage.html

curl-command-verbose

如果对使用 -v 选项得到的细节不满意,那么可以使用 -trace选项

$ curl --trace info  https://curl.haxx.se/docs/manpage.html

curl-command-trace

(6) 使用 DICT 协议查找单词含义

通过该工具,您可以使用 dict 协议在终端上搜索单词。一个字典服务器 dict.org url 被传递给它,dict.org 服务器支持大约 77 种字典。

要列出终端上支持的所有字典,运行以下命令:

$ curl dict://dict.org/show:db

curl-command-showalldict

现在,要在特定的字典中搜索单词,请使用以下命令

$ curl dict://dict.org/d:[word-to-be-searched]:[dictionary-name]

示例如下:

$ curl dict://dict.org/d:command:gcide

备注: gcide 是 The Collaborative International Dictionary of English 的简称。
curl-command-singledictsearch

如果你想在所有的字典中搜索一个单词,运行以下命令

$ curl dict://dict.org/d:[word-to-be-searched]:*

示例如下:

$ curl dict://dict.org/d:command:*

curl-command-dictionary

我的开源项目

酷瓜云课堂-在线教育解决方案


鸠摩智首席音效师
478 声望10 粉丝

身强体健,龙精虎猛的活着。