適用于Linux的優秀命令行下載加速器
在遠程服務器或者本地工作時,您可能經常需要從外部源獲取內容。特別是當您沒有其他選擇時,您將需要使用Linux命令行工具來完成這項工作。
在本文中,我們將回顧一些最常用的通過Linux下命令行下載內容的工具。
測試環境為Ubuntu 18.04 LTS
Wget
我們將從一個名為wget的***的工具開始。它是一個網絡實用程序,可用于通過HTTP,HTTPS和FTP下載內容。 Wget可以在后臺和前臺使用,這使得它在您需要保持下載運行時非常有用,即使您已經注銷了。
這個工具提供了很多選項,允許您執行經過身份驗證的下載、具有級別限制的遞歸下載、接受URL的正則表達式、允許排除、接受來自文件的URL輸入以及其他許多選項。wget的選項真的很多,強烈建議通過簡單的運行來查看工具的幫助頁面。
- linuxidc@linuxidc:~/linuxidc.com$ wget -h
GNU Wget 1.19.4,非交互式的網絡文件下載工具。
用法: wget [選項]... [URL]...
長選項所必須的參數在使用短選項時也是必須的。
啟動:
-V, --version 顯示 Wget 的版本信息并退出
-h, --help 打印此幫助
-b, --background 啟動后轉入后臺
-e, --execute=命令 運行一個“.wgetrc”風格的命令
wget命令的一些有用示例是:
wget最基本的下載示例是:
- linuxidc@linuxidc:~/linuxidc.com$ wget https://linux.linuxidc.com/linuxidc.com.zip
- --2019-03-24 12:31:20-- https://linux.linuxidc.com/linuxidc.com.zip
- 正在解析主機 linux.linuxidc.com (linux.linuxidc.com)... 60.191.177.106
- 正在連接 linux.linuxidc.com (linux.linuxidc.com)|60.191.177.106|:443... 已連接。
- 已發出 HTTP 請求,正在等待回應... 200 OK
- 長度: 10653910 (10M) [application/x-zip-compressed]
- 正在保存至: “linuxidc.com.zip”
- linuxidc.com.zip 100%[===================>] 10.16M 4.54MB/s 用時 2.2s
- 2019-03-24 12:31:22 (4.54 MB/s) - 已保存 “linuxidc.com.zip” [10653910/10653910])
從文件中列出的URL下載的示例。 首先是我們的文件列表:
- linuxidc@linuxidc:~/linuxidc.com$ cat list.txt
- https://linux.linuxidc.com/linuxidc.com.gz
- https://linux.linuxidc.com/linuxidc.com.zip
- https://www.linuxidc.com/index.htm
然后你可以運行下載:
- linuxidc@linuxidc:~/linuxidc.com$ wget -i list.txt
要在后臺運行下載,您可以使用:
- linuxidc@linuxidc:~/linuxidc.com$ wget -b https://linux.linuxidc.com/linuxidc.com.gz
繼續在后臺運行,pid 為 3131。
將把輸出寫入至 “wget-log.1”。
如果要使用wget和FTP下載單個文件。
- $ wget ftp://user:password@host:/www.linuxidc.com/linuxidc.txt
一個更有用的例子是使用后臺和遞歸模式,這樣你就可以獲得目錄中的所有文件和文件夾。
- $ wget -br ftp://user:password@ftp-host:/linuxidc.com/
Wget預裝在許多現代Linux發行版上,但是如果你需要安裝它,你可以使用:
- $ sudo apt install wget # Debian/Ubuntu like distros
- # yum install wget # CentOS/RHEL
- # dnf install wget # Fedora
Curl
curl是一種可用于從服務器傳輸數據或向服務器傳輸數據的工具。它支持多種協議。根據其手冊頁,支持以下協議:DICT,FILE,FTP,FTPS,GOPHER,HTTP,HTTPS,IMAP,IMAPS,LDAP,LDAPS,POP3,POP3S,RTMP,RTSP,SCP,SFTP,SMB,SMBS,SMTP ,SMTPS,TELNET和TFTP。
你可以想象,你可以用這些來做很多事情。正如你可能已經想到的那樣,curl支持代理,用戶身份驗證,FTP上傳/下載,文件傳輸恢復等等。
以下是使用curl的一些示例:
下載文件:
- linuxidc@linuxidc:~/linuxidc.com$ curl -O https://linux.linuxidc.com/linuxidc.com.zip
- % Total % Received % Xferd Average Speed Time Time Time Current
- Dload Upload Total Spent Left Speed
- 100 10.1M 100 10.1M 0 0 4399k 0 0:00:02 0:00:02 --:--:-- 4399k
<預設>
由您選擇下載一個文件并修改文件名另存(如下把index.htm另存為linuxidc.html):
- linuxidc@linuxidc:~/linuxidc.com$ curl -o linuxidc.html https://www.linuxidc.com/index.htm
- % Total % Received % Xferd Average Speed Time Time Time Current
- Dload Upload Total Spent Left Speed
- 100 44389 100 44389 0 0 256k 0 --:--:-- --:--:-- --:--:-- 256k
要恢復中斷下載,您可以使用:
- linuxidc@linuxidc:~/linuxidc.com$ curl -C - O https://www.linuxidc.com/index.htm
您可以在此處查看更多有用的curl示例:見
在Linux中使用curl命令參數詳解 https://www.linuxidc.com/Linux/2019-01/156487.htm
要安裝curl,您可以使用:
- $ sudo apt install curl # Debian/Ubuntu
- # yum install curl # CentOS/RHEL
- # dnf install curl # Fedora
Aria2
Aria是另一種多協議下載工具。 Aria支持HTTP / HTTPS,FTP / SFTP BitTorrent和Metalink。與其他功能相比,它的一些功能是它支持從多個位置同時下載文件,磁鏈接和功能齊全的BitTorrent客戶端。
作為BitTorrent客戶端,它支持DHT,PEX,加密,磁鐵URI,網絡種子,選擇性下載和本地對等發現。
以下是使用Aria2的一些示例
下載種子文件:
- linuxidc@linuxidc:~/linuxidc.com$ aria2c http://releases.ubuntu.com/18.10/ubuntu-18.10-desktop-amd64.iso.torrent
如下圖:
使用文本文件中列出的URL下載:
- linuxidc@linuxidc:~/linuxidc.com$ aria2c -i list.txt
如下圖:
恢復不完整下載:
- linuxidc@linuxidc:~/linuxidc.com$ aria2c -c http://releases.ubuntu.com/18.10/ubuntu-18.10-desktop-amd64.iso.torrent
從受密碼保護的網站下載:
- linuxidc@linuxidc:~/linuxidc.com$ aria2c --http-user=xxx --http-password=xxx https://linuxidc.com/file
要安裝Aria2,您可以使用以下命令:
- $ sudo apt install aria2 # Debian/Ubuntu
- # yum install aria2 # CentOS/RHEL
- # dnf install aria2 # Fedora
Axel
我們列表中的第四個下載實用程序是Axel,它嘗試通過對一個文件使用多個連接來改進下載過程。它可以使用多個下載位置進行一次下載。根據開發人員的說法,Axel可以將下載速度提高60%,并且支持協議:HTTP / HTTPS,FTP和FTPS。
以下是使用Axel的一些示例:
要使用Axel執行簡單下載,您可以使用以下命令:
- linuxidc@linuxidc:~/linuxidc.com$ axel https://linux.linuxidc.com/linuxidc.com.zip
正在初始化下載:https://linux.linuxidc.com/linuxidc.com.zip
文件大小:10653910 字節
正在打開輸出文件 linuxidc.com.zip.0
正在開始下載
您可以使用相應的選項--max-speed或short選項-s設置***下載速度。該值以每秒字節數設置:
- linuxidc@linuxidc:~/linuxidc.com$ axel --max-speed=2014 https://www.linuxidc.com/linuxidc.com.zip
為了演示,本文設為1024字節,如下圖
要使用其他名稱保存文件,可以使用-o選項指定文件名:
- linuxidc@linuxidc:~/linuxidc.com$ axel -o wordpress.zip https://www.linuxidc.com/linuxidc.com.zip
如果要在Linux系統上安裝Axel,請使用以下命令中的相應命令:
- $ sudo apt install axel # Ubuntu/Debian
- # yum install epel release && yum install axel # CentOS/RHEL
- # dnf install axel # Fedora
總結
這是我們列出的Linux中使用最廣泛的一些下載實用程序。你在使用哪一種呢?你為什么更喜歡這些?請在下面的評論部分分享你的觀點。