如何在Linux命令行中使用curl下载文件?

curl工具或命令用于从命令行下载不同的文件和目录。curl由所有主要的Linux发行版提供,如Ubuntu、Debian、Mint、CentOS等。

null

安装卷曲

默认情况下不安装curl工具或命令。为了使用它,它应该安装在 apt安装 dnf安装 命令。为了安装Ubuntu,Debian,Mint,Kali使用以下命令。

$ sudo apt install curl

CentOS、Fedora、RHEL使用以下命令来安装curl。

$ sudo dnf install curl

卷曲型

安装的curl命令版本可以使用–version选项打印。这还将打印支持的协议列表和一些有关curl命令的必需库。

$ curl --version

输出如下。

curl 7.68.0 (x86_64-pc-linux-gnu) libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.9 libidn2/2.3.0 libpsl/0.21.0 (+libidn2/2.3.0) libssh/0.9.3/openssl/zlib nghttp2/1.41.0 librtmp/2.3Release-Date: 2020-01-08Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftpFeatures: AsynchDNS brotli GSS-API HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM NTLM_WB PSL SPNEGO SSL TLS-SRP UnixSockets

卷曲帮助

curl是一个非常高级的工具,它提供了很多不同的选项。有关curl和这些选项的帮助信息可以通过 -小时 –帮助 选项如下。

$ curl -h
图片[1]-如何在Linux命令行中使用curl下载文件?-yiteyi-C++库
卷曲帮助

下载文件

默认情况下,下载的内容将打印到当前终端的标准输出,而不是存储为文件。这个 -o 选项可用于存储为文件,其中还应提供文件名。在下面的示例中,我们将下载的文件名设置为 示例.txt .

$ curl -o sample.txt https://filesamples.com/samples/document/txt/sample1.txt
图片[2]-如何在Linux命令行中使用curl下载文件?-yiteyi-C++库
使用curl下载文件

我们可以看到显示了很多关于下载的信息。

  • %%总计 是要检索的数据总量。
  • %%收到 是到目前为止检索到的数据的百分比。
  • %%克弗德 是到目前为止上载的数据的百分比。
  • 平均下载速度
  • 平均上传速度
  • 总时间
  • 花费的时间
  • 剩余时间
  • 当前速度

相关文章: Linux zgrep命令教程

或者,可以使用stdout操作符将下载的内容重定向到文件中。使用以下命令,下载的文件内容将重定向到名为sample.txt的文件中。

$ curl https://filesamples.com/samples/document/txt/sample1.txt > sample.txt

不显示进度条

默认情况下,将显示有关下载的进度条。即使这个进度条提供了有用的信息,我们可能想禁用或隐藏这个进度条和下载将悄悄完成。可以为silent选项提供 -s码 –无声 选项如下。

$ curl --silent -o sample.txt https://filesamples.com/txt/sample1.txt

将进度条显示为#

默认情况下,进度条以文本形式提供信息,但也可以将进度条显示为“下载百分比”。下载的百分比也将显示为数字。

$ curl -# -o sample.txt  https://filesamples.com/samples/document/txt/sample1.txt
图片[3]-如何在Linux命令行中使用curl下载文件?-yiteyi-C++库
将进度条显示为#

继续中断的下载

在下载像电影、媒体、图像、ISO文件等大文件时,它们可能会占用很多时间。如果由于系统关闭、网络问题或远程服务器问题等不同原因导致下载中断,我们甚至可以取消下载。我们可以继续从我们离开的地方下载,已经下载的内容或数据将被保留,不再下载,它将继续从我们离开的地方。这个 -C级 这是 –继续 可用于恢复中断的下载。

$ curl -C -o ubuntu.iso  https://filesamples.com/ubuntu.iso

将下载的文件内容重定向到另一个命令中

curl命令通常与-o选项一起使用,其中提供下载的文件名,下载的文件内容将放入该文件中。如果未提供内容,则将内容打印到当前终端的标准输出中。我们可以使用这个默认行为,通过使用bash管道操作符将下载的内容或数据重定向到另一个命令中。在下面的示例中,我们将把文件内容重定向到 厕所 命令,该命令将统计给定数据中的字符、单词和句子。

$ curl -s  https://filesamples.com/samples/document/txt/sample1.txt | wc

输出如下所示,其中句子计数为3,单词计数为88,字符计数为607。

3 88 607
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享