在遠程伺服器或者本地工作時,您可能經常需要從外部源獲取內容。特別是當您沒有其他選擇時,您將需要使用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是一種可用於從伺服器傳輸數據或向伺服器傳輸數據的工具。它支持多種協議。根據其手冊頁,支持以下協議: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
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可以將下載速度提高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中使用最廣泛的一些下載實用程序。你在使用哪一種呢?你為什麼更喜歡這些?請在下面的評論部分分享你的觀點。
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx本文永久更新連結地址:https://www.linuxidc.com/Linux/2019-03/157681.htm