適用于Linux的優(yōu)秀命令行下載加速器
在遠(yuǎn)程服務(wù)器或者本地工作時,您可能經(jīng)常需要從外部源獲取內(nèi)容。特別是當(dāng)您沒有其他選擇時,您將需要使用Linux命令行工具來完成這項(xiàng)工作。
在本文中,我們將回顧一些最常用的通過Linux下命令行下載內(nèi)容的工具。
測試環(huán)境為Ubuntu 18.04 LTS
Wget
我們將從一個名為wget的***的工具開始。它是一個網(wǎng)絡(luò)實(shí)用程序,可用于通過HTTP,HTTPS和FTP下載內(nèi)容。 Wget可以在后臺和前臺使用,這使得它在您需要保持下載運(yùn)行時非常有用,即使您已經(jīng)注銷了。
這個工具提供了很多選項(xiàng),允許您執(zhí)行經(jīng)過身份驗(yàn)證的下載、具有級別限制的遞歸下載、接受URL的正則表達(dá)式、允許排除、接受來自文件的URL輸入以及其他許多選項(xiàng)。wget的選項(xiàng)真的很多,強(qiáng)烈建議通過簡單的運(yùn)行來查看工具的幫助頁面。
- linuxidc@linuxidc:~/linuxidc.com$ wget -h
GNU Wget 1.19.4,非交互式的網(wǎng)絡(luò)文件下載工具。
用法: wget [選項(xiàng)]... [URL]...
長選項(xiàng)所必須的參數(shù)在使用短選項(xiàng)時也是必須的。
啟動:
-V, --version 顯示 Wget 的版本信息并退出
-h, --help 打印此幫助
-b, --background 啟動后轉(zhuǎn)入后臺
-e, --execute=命令 運(yùn)行一個“.wgetrc”風(fēng)格的命令
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
- 正在解析主機(jī) linux.linuxidc.com (linux.linuxidc.com)... 60.191.177.106
- 正在連接 linux.linuxidc.com (linux.linuxidc.com)|60.191.177.106|:443... 已連接。
- 已發(fā)出 HTTP 請求,正在等待回應(yīng)... 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
然后你可以運(yùn)行下載:
- linuxidc@linuxidc:~/linuxidc.com$ wget -i list.txt
要在后臺運(yùn)行下載,您可以使用:
- linuxidc@linuxidc:~/linuxidc.com$ wget -b https://linux.linuxidc.com/linuxidc.com.gz
繼續(xù)在后臺運(yùn)行,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預(yù)裝在許多現(xiàn)代Linux發(fā)行版上,但是如果你需要安裝它,你可以使用:
- $ sudo apt install wget # Debian/Ubuntu like distros
- # yum install wget # CentOS/RHEL
- # dnf install wget # Fedora
Curl
curl是一種可用于從服務(wù)器傳輸數(shù)據(jù)或向服務(wù)器傳輸數(shù)據(jù)的工具。它支持多種協(xié)議。根據(jù)其手冊頁,支持以下協(xié)議:DICT,F(xiàn)ILE,F(xiàn)TP,F(xiàn)TPS,GOPHER,HTTP,HTTPS,IMAP,IMAPS,LDAP,LDAPS,POP3,POP3S,RTMP,RTSP,SCP,SFTP,SMB,SMBS,SMTP ,SMTPS,TELNET和TFTP。
你可以想象,你可以用這些來做很多事情。正如你可能已經(jīng)想到的那樣,curl支持代理,用戶身份驗(yàn)證,F(xiàn)TP上傳/下載,文件傳輸恢復(fù)等等。
以下是使用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
<預(yù)設(shè)>
由您選擇下載一個文件并修改文件名另存(如下把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
要恢復(fù)中斷下載,您可以使用:
- linuxidc@linuxidc:~/linuxidc.com$ curl -C - O https://www.linuxidc.com/index.htm
您可以在此處查看更多有用的curl示例:見
在Linux中使用curl命令參數(shù)詳解 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是另一種多協(xié)議下載工具。 Aria支持HTTP / HTTPS,F(xiàn)TP / SFTP BitTorrent和Metalink。與其他功能相比,它的一些功能是它支持從多個位置同時下載文件,磁鏈接和功能齊全的BitTorrent客戶端。
作為BitTorrent客戶端,它支持DHT,PEX,加密,磁鐵URI,網(wǎng)絡(luò)種子,選擇性下載和本地對等發(fā)現(xiàn)。
以下是使用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
如下圖:
恢復(fù)不完整下載:
- linuxidc@linuxidc:~/linuxidc.com$ aria2c -c http://releases.ubuntu.com/18.10/ubuntu-18.10-desktop-amd64.iso.torrent
從受密碼保護(hù)的網(wǎng)站下載:
- 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
我們列表中的第四個下載實(shí)用程序是Axel,它嘗試通過對一個文件使用多個連接來改進(jìn)下載過程。它可以使用多個下載位置進(jìn)行一次下載。根據(jù)開發(fā)人員的說法,Axel可以將下載速度提高60%,并且支持協(xié)議:HTTP / HTTPS,F(xiàn)TP和FTPS。
以下是使用Axel的一些示例:
要使用Axel執(zhí)行簡單下載,您可以使用以下命令:
- linuxidc@linuxidc:~/linuxidc.com$ axel https://linux.linuxidc.com/linuxidc.com.zip
正在初始化下載:https://linux.linuxidc.com/linuxidc.com.zip
文件大小:10653910 字節(jié)
正在打開輸出文件 linuxidc.com.zip.0
正在開始下載
您可以使用相應(yīng)的選項(xiàng)--max-speed或short選項(xiàng)-s設(shè)置***下載速度。該值以每秒字節(jié)數(shù)設(shè)置:
- linuxidc@linuxidc:~/linuxidc.com$ axel --max-speed=2014 https://www.linuxidc.com/linuxidc.com.zip
為了演示,本文設(shè)為1024字節(jié),如下圖
要使用其他名稱保存文件,可以使用-o選項(xiàng)指定文件名:
- linuxidc@linuxidc:~/linuxidc.com$ axel -o wordpress.zip https://www.linuxidc.com/linuxidc.com.zip
如果要在Linux系統(tǒng)上安裝Axel,請使用以下命令中的相應(yīng)命令:
- $ sudo apt install axel # Ubuntu/Debian
- # yum install epel release && yum install axel # CentOS/RHEL
- # dnf install axel # Fedora
總結(jié)
這是我們列出的Linux中使用最廣泛的一些下載實(shí)用程序。你在使用哪一種呢?你為什么更喜歡這些?請?jiān)谙旅娴脑u論部分分享你的觀點(diǎn)。