使⽤curl命令下载⽂件
Curl是基于UNIX的系统中默认安装的⼯具,Curl⽀持多种协议,包括HTTP、HTTPS、FTP、FTPS、SFTP等。如果你没有指定任何协议,默认是HTTP协议。
环境
7.7
下载⽂件,使名称⼀致
可以使⽤curl下载⽂件的相同名称作为本地⽂件名。可以⽤-O选项。
[root@localhost ~]# curl mirrors.163/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 -ample/file.pdf -ample/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://ample/file[1-30].jpg
如果希望使⽤不同的名称保存多个⽂件,可以使⽤-o选项来实现,如下所⽰。
[root@localhost ~]# curl -o file2.ample/file.pdf -o file3.ample/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 mirrors.163/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 mirrors.163/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是什么命令总结
curl提供了很多有⽤的技巧,⽐如代理⽀持、⽤户⾝份验证、FTP上传、HTTP post、SSL连接、cookie、⽂件传输恢复、Metalink等等。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论