GNU Wget是一個(gè)命令行程序,用于從Web下載文件。Wget可以讓您可以使用HTTP,HTTPS和FTP協(xié)議下載文件。
wget提供了許多選項(xiàng),允許您下載多個(gè)文件,恢復(fù)下載,限制速度,遞歸下載,在后臺(tái)下載,鏡像網(wǎng)站等等。
wget
命令現(xiàn)已預(yù)安裝在大多數(shù)Linux發(fā)行版。要檢查系統(tǒng)是否已安裝wget。請(qǐng)按快捷鍵CTRL+ALT+T
打開終端,運(yùn)行wget
命令。
安裝 wget
如果已安裝wget,終端將會(huì)輸出 wget: missing URL
,否則將提示你 wget command not found
。
如果你的計(jì)算機(jī)運(yùn)行的是基于Debian的Linux發(fā)行版。例如Linux mint,Ubuntu。請(qǐng)運(yùn)行命令sudo apt install wget
安裝wget。
如果你的計(jì)算機(jī)運(yùn)行的是基于RedHat的Linux發(fā)行版。例如CentOS,F(xiàn)edora。請(qǐng)運(yùn)行命令sudo yum install wget
安裝wget。
sudo apt install wget
sudo yum install wget
wget 命令詳解
在介紹如何使用wget命令之前,讓我們先回顧一下基本語法。wget命令語法形式是wget [options] [url]
。
options
可選參數(shù),wget命令的選項(xiàng)。url
遠(yuǎn)程服務(wù)器URL,也是可選參數(shù)。
在不指定任何參數(shù)與選項(xiàng)運(yùn)行wget命令時(shí),wget
命令下載url指向的文件到當(dāng)前目錄。
在下載過程中,wget會(huì)顯示進(jìn)度條以及文件名,文件大小,下載速度和完成下載的預(yù)計(jì)時(shí)間。
如果不需要這些wget的輸出,可使用-q
選項(xiàng)關(guān)閉,該選項(xiàng)經(jīng)常用于shell腳本。
下載完成后,當(dāng)前工作目錄中找到下載的文件。如果當(dāng)前目錄存在同名文件,wget命令將在文件名末尾追加數(shù)字,不會(huì)覆蓋已存在的文件。
wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.2.tar.xz
wget 命令指定保存文件的名稱
要以不同的名稱保存下載的文件,請(qǐng)wget
命令的使用-O
選項(xiàng),后跟文件的名稱。
wget -O linux.tar.xz url #指定保存的名稱
wget 命令指定保存目錄
要以指定不同目錄保存下載的文件,請(qǐng)wget
命令的使用-P
選項(xiàng),后跟文件的名稱。
wget -P /mnt/iso url #指定保存的目錄
wget 命令限制下載速度
要限制下載速度,請(qǐng)使用wget命令的--limit-rate
選項(xiàng)。值的單位默認(rèn)是字節(jié),也可以指定單位k
千字節(jié)和兆字節(jié)m
。
當(dāng)您不希望wget消耗所有可用帶寬時(shí),此選項(xiàng)很有用。
wget --limit-rate=1m url
wget 命令恢復(fù)下載
如果您在下載大文件時(shí)丟失連接而中斷,則您可以wget命令的使用-c
選項(xiàng)恢復(fù)下載。
如果遠(yuǎn)程服務(wù)器不支持?jǐn)帱c(diǎn)續(xù)傳,wget命令將從頭開始下載文件并覆蓋現(xiàn)有文件。
wget -c url
wget 命令后臺(tái)下載
wget命令-b
選項(xiàng)允許你在后臺(tái)下載文件。這在下載大文件時(shí)非常有用。在后臺(tái)下載時(shí)。
wget
命令的下載狀態(tài),也就是wget
命令的標(biāo)準(zhǔn)輸出將被重定向到當(dāng)前目錄的wget-log
文件。
要查看wget命令的下載進(jìn)度等信息,可以運(yùn)行tail命令tail -f wget-log
查看wget命令的下載狀態(tài)。
wget -b url
tail -f wget-log
wget 命令下載FTP服務(wù)器文件
要從受密碼保護(hù)的FTP服務(wù)器下載文件時(shí),您需要指定FTP用戶名和密碼。使用wget命令的--ftp-user
和--ftp-password
選項(xiàng)。
wget --ftp-user=FTP_USERNAME --ftp-password=FTP_PASSWORD ftp://ftp.example.com/filename.tar.gz
wget 命令下載多個(gè)文件
如果要一次下載多個(gè)文件,請(qǐng)使用wget
命令-i
選項(xiàng),后跟要下載包URL的文件。在文件的每URL都需要獨(dú)占一行。
如果未使用wget
命令-i
選項(xiàng)指定文件名,wget
命令將會(huì)從標(biāo)準(zhǔn)輸入讀取URL。
例如命令wget -i linux-distros.txt
下載linux-distros.txt
文件包含的URL資源。
wget -i linux-distros.txt
http://mirrors.edge.kernel.org/archlinux/iso/2018.06.01/archlinux-2018.06.01-x86_64.iso
https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-9.4.0-amd64-netinst.iso
https://download.fedoraproject.org/pub/fedora/linux/releases/28/Server/x86_64/iso/Fedora-Server-dvd-x86_64-28-1.1.iso
linux-distros.txt
wget 命令下載并解壓與標(biāo)準(zhǔn)輸出
這是非常節(jié)省時(shí)間的高級(jí)技巧,它允許你一邊下載一邊解壓。除了解壓之外還可以做你任何想做的事,只要管道右側(cè)的命令允許從標(biāo)準(zhǔn)輸入讀取即可。
要做到邊下載邊解壓,需要使用wget
命令-q
選項(xiàng)關(guān)閉下載狀態(tài)的標(biāo)準(zhǔn)輸出,然后組合使用wget命令的-O -
選項(xiàng)將文件寫入標(biāo)準(zhǔn)輸出。
最后通過管道|
傳遞給tar
命令,tar將存檔解壓縮到/var/www
目錄。tar命令的-C
選項(xiàng)指定解壓文件寫入的目標(biāo)目錄。-
選項(xiàng)從標(biāo)準(zhǔn)輸入讀取數(shù)據(jù)。
wget -q -O - "http://wordpress.org/latest.tar.gz" | tar -xzf - -C /var/www
wget 命令更改User-Agent
在下載文件時(shí),有些遠(yuǎn)程服務(wù)器會(huì)阻止wget命令的默認(rèn)User-Agent。在這種情況下,你需要模擬不同的瀏覽器User-Agent。使用wget
命令-U
選項(xiàng)。
wget --user-agent="Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0" http://wget-forbidden.com/
結(jié)論
至此,您應(yīng)該對(duì)最常見的wget選項(xiàng)有一個(gè)很好的理解,并且您應(yīng)該能夠使用wget載多個(gè)文件,恢復(fù)下載,根據(jù)您的需要組合Wget選項(xiàng)。
-
Linux
+關(guān)注
關(guān)注
87文章
11292瀏覽量
209323 -
命令
+關(guān)注
關(guān)注
5文章
683瀏覽量
22011 -
wget
+關(guān)注
關(guān)注
0文章
5瀏覽量
2141
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論