美文网首页Linux
如何使用curl命令下载文件

如何使用curl命令下载文件

作者: 易霂 | 来源:发表于2020-05-12 17:46 被阅读0次

Curl是基于UNIX的系统中默认安装的工具,Curl支持多种协议,包括HTTP、HTTPS、FTP、FTPS、SFTP等。如果你没有指定任何协议,默认是HTTP协议。

环境

Centos7.7

下载文件,使名称一致

可以使用curl下载文件的相同名称作为本地文件名。可以用-O选项。

[root@localhost ~]# curl http://mirrors.163.com/centos/8.1.1911/isos/x86_64/CentOS-8.1.1911-x86_64-dvd1.iso
 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                Dload  Upload   Total   Spent    Left  Speed
 0 7205M    0 25.9M    0     0  5452k      0  0:22:33  0:00:04  0:22:29 5452k
[root@localhost ~]# ls
CentOS-8.1.1911-x86_64-dvd1.iso

下载多个文件

要同时下载多个文件时,可以使用多个-O标志,后面跟着要url链接。

[root@localhost ~]# curl -O [URL1] -O [URL2] -O [URL3] ...

例子:

[root@localhost ~]#  curl -O www.example.com/file.pdf -O www.example.com/file1.pdf
 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                Dload  Upload   Total   Spent    Left  Speed
100 20597  100 20597    0     0  1436k      0 --:--:-- --:--:-- --:--:-- 1436k
100 20597  100 20597    0     0   9.8M      0 --:--:-- --:--:-- --:--:--  9.8M

如果url中文件带有数字,并且有顺序,可以使用正则语法:

[root@localhost ~]# curl ftp://ftp.example.com/file[1-30].jpg

如果希望使用不同的名称保存多个文件,可以使用-o选项来实现,如下所示。

[root@localhost ~]# curl -o file2.pdf www.example.com/file.pdf -o file3.pdf www.example.com/file1.pdf
 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                Dload  Upload   Total   Spent    Left  Speed
100 20597  100 20597    0     0   957k      0 --:--:-- --:--:-- --:--:--  957k
100 20597  100 20597    0     0  19.6M      0 --:--:-- --:--:-- --:--:-- 19.6M

下载文件显示进度条

curl在文件下载期间显示一个进度表,显示传输速率、传输的数据量、剩余的时间等……

[root@localhost ~]# curl -# -O http://mirrors.163.com/centos/8.1.1911/isos/x86_64/CentOS-8.1.1911-x86_64-dvd1.iso
##                                                                         3.5%

如何限制最大传输速度

限制数据传输速率的用法为:

[root@localhost ~]# curl --limit-rate [value] [URL]

这个值可以用字节表示,k后缀为千字节,m后缀为兆字节,g后缀为千兆字节。

以下命令将把下载速度限制在1mb以内:

[root@localhost ~]# curl --limit-rate 1m -O http://mirrors.163.com/centos/8.1.1911/isos/x86_64/CentOS-8.1.1911-x86_64-dvd1.iso
 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                Dload  Upload   Total   Spent    Left  Speed
 0 7205M    0 21.1M    0     0  1033k      0  1:58:57  0:00:20  1:58:37 1005k

总结

curl提供了很多有用的技巧,比如代理支持、用户身份验证、FTP上传、HTTP post、SSL连接、cookie、文件传输恢复、Metalink等等。

相关文章

  • 小问题合集

    如何从github上下载单个文件?打开github上文件地址,点击Raw获取真实文件地址,然后通过curl命令下载...

  • 如何使用curl命令下载文件

    Curl是基于UNIX的系统中默认安装的工具,Curl支持多种协议,包括HTTP、HTTPS、FTP、FTPS、S...

  • curl命令使用问题记录

    问题1️⃣: curl命令http请求3xx跳转解决办法再测的一个项目是使用 curl命令来实现文件下载,之前跑着...

  • HTTPie:替代 Curl 和 Wget 的现代 HTTP 命

    大多数时间我们会使用 curl 命令或是 wget 命令下载文件或者做其他事。 我们以前曾写过最佳命令行下载管理器...

  • mac系统下安装Composer

    mac下直接用命令行模式下载Composer 使用 curl 指令下载: curl -sS https://get...

  • Mac 命令行

    命令行 Linux命令 Curl curl是一个传输文件(上传、下载)的命令行工具,它支持FTP,FTPS,HTT...

  • curl 命令详解

    curl命令 网络应用 curl命令是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以...

  • 一点点关于HTTP的碎碎念

    curl命令 curl命令是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输...

  • mongoDB(mac下安装配置)

    一、安装 使用 curl 命令来下载安装: 安装完成后,把 MongoDB 的二进制命令文件目录(安装目录/bin...

  • 一、Fabric环境配置

    1.Install cURL curl命令是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载...

网友评论

    本文标题:如何使用curl命令下载文件

    本文链接:https://www.haomeiwen.com/subject/rqkinhtx.html