Linux Curl 命令示例 (第2篇)

linux-curl-command

众所周知,Curl 是非常有用的命令行程序,用来在服务器上传输数据。我们已经在前面文章中讨论过了。

参看文章:Linux Curl 命令示例 (第1篇)

在本教程的第二部分中,我们将进一步讨论 Curl 的用途。

(1) 使用代理下载文件

如果我们要使用代理来访问 internet,那么在使用 curl 命令下载文件时需要提供代理信息,使用的选项 -x 可以达成目的,示例如下:

$ curl -x proxy.server.com:3128 download_URL

(2) 限制数据传输速率

当下载文件时,我们可能想要限制下载的速度,因为下载可能最终会占用整个网络带宽。我们可以使用 --limit-rate 选项限制下载速度,示例如下:

$ curl --limit-rate 1024B -O download_URL

Example:3 下载在指定日期之前或之后修改的文件

从一个网站下载在 2017年1月1日之后修改过的文件,示例如下:

$ curl -z 1-Jan-17 download_URL

从一个网站下载在 2017年1月1日之前修改过的文件,示例如下:

$ curl -z -1-Jan-17 download_URL

(4) 认证后下载文件

有许多网站只允许认证和授权之后下载文件,要使用 curl 下载这样一个文件,我们可以使用 -u 选项,示例如下:

$ curl -u username:password download_URL

(5) 恢复下载

有时它发生在下载文件,特别是当下载大文件时,我们需要停止下载以节省带宽来执行一些其他重要任务,或者我们的下载可能会由于一些网络问题而中断。我们可以使用 -C 选项,从中断或停止的位置开始下载,示例如下:

$ curl -C download_URL

(6) 从 FTP 服务器下载文件

Curl 支持许多协议,FTP 就是其中之一,示例如下:

$ curl -u ftpuser:password -O ftp://ftp_pub/public_html/index.html

(7) 上传文件到 FTP 服务器

上传单个文件到 FTP 服务器,示例如下:

$ curl -u ftpuser:password -T linuxtechi.txt ftp://ftp_pub/public_html/

上传多个文件到 FTP 服务器,示例如下:

$ curl -u ftpuser:password -T "(linuxtechi1.txt linuxtechi2.txt)"  ftp://ftp_pub/public_html/

(8) 从 FTP 服务器删除文件

使用 curl,我们还可以从 FTP 服务器中删除文件,示例如下:

$ curl ftp://ftp_pub/public_html -X 'DELE linuxtechi.zip' --user ftpuser:password

(9) 验证 SSL 证书

We might need to verify the SSL certificate of the website from where we are downloading data. We can do so by using ‘ -carcert ‘ option with curl command, we also need to provide the name of the certificate that we need to verify,

有时我们可能需要验证下载数据的网站的 SSL 证书,我们可以通过使用 -carcert 来做到这一点,我们还需要提证书的名称,示例如下:

$ curl --cacert new-ca.crt download_URL

(10) 忽略 SSL 证书警告

当使用一个可能带有自签名证书的网站时,我们会收到一个 SSL 证书警告消息,要忽略此消息并继续下载,我们可以使用 -k 选项,示例如下:

$ curl -k download_url

以上是 curl 命令的一些使用示例,请在下面的评论框中分享您的评论和疑问。

我的开源项目

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

你可能感兴趣的:(linuxcurl)