美文网首页
linux下载文件命令

linux下载文件命令

作者: 涅槃快乐是金 | 来源:发表于2022-09-15 22:01 被阅读0次

    curl

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

    下载文件,使名称一致

    可以使用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等等。

    wget

    wget 是 linux 下一个从网络上自动下载文件的常用自由工具。

    它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理。

    安装

    第一种、传统的安装包

    • 1.从ftp://ftp.gnu.org/gnu/wget/下载到最新的wget安装包到本地
    • 2.然后通过终端tar -zxvf命令解压到我们某个目录
    • 3.然后依次执行./configure 和 make 以及 make install命令。

    第二种、Homebrew
    Homebrew是一款非常强大的可以应用在MAC中的Linux管理包,如果上面的方法感觉比较麻烦,我们可以通过下面的方法解决。

    • 执行安装brew
      ruby -e "$(curl -fsSL       https://raw.githubusercontent.com/Homebrew/install/master/install)"
      
      进入终端之后,执行brew的安装。
    • 安装 wget
      brew install wget
      
    下载

    一般的使用方法是: wget + 空格 + 参数 + 要下载文件的url路径,例如:

    wget http://www.linuxsense.org/xxxx/xxx.tar.gz 
    

    -c参数, 这个也非常常见, 可以断点续传, 如果不小心终止了, 可以继续使用命令接着下载,例如:

    wget -c http://www.linuxsense.org/xxxx/xxx.tar.gz 
    

    Wget 常用参数

    -b:后台下载,Wget默认的是把文件下载到当前目录。
    -O:将文件下载到指定的目录中。
    -P:保存文件之前先创建指定名称的目录。
    -t:尝试连接次数,当Wget无法与服务器建立连接时,尝试连接多少次。
    -c:断点续传,如果下载中断,那么连接恢复时会从上次断点开始下载。
    -r:使用递归下载

    相关文章

      网友评论

          本文标题:linux下载文件命令

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