COUNIT怎么用(coun.)
1735
2025-03-31
wget實用程序是從 Internet 下載文件的最佳選擇。wget 幾乎可以處理所有復雜的下載情況,包括大文件下載、遞歸下載、非交互式下載、多文件下載等,
在本文中,讓我們使用 15 個很棒的 wget 示例來回顧如何將wget用于各種下載場景。
1. 使用 wget 下載單個文件
以下示例從 Internet 下載單個文件并存儲在當前目錄中。
$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
下載時,它會顯示一個進度條,其中包含以下信息:
下載完成百分比(例如 31% 如下所示)
到目前為止下載的總字節數(例如 1,213,592 字節,如下所示)
當前下載速度(例如 68.2K/s 如下圖)
剩余下載時間(例如 eta 34 秒,如下所示)
正在下載:
$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2 保存到:`strx25-0.9.2.1.tar.bz2.1' 31% [==================> 1,213,592 68.2K/s eta 34s
下載完成:
$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2 Saving to: `strx25-0.9.2.1.tar.bz2' 100%[======================>] 3,852,374 76.8K/s in 55s 2009-09-25 11:15:30 (68.7 KB/s) - `strx25-0.9.2.1.tar.bz2' saved [3852374/3852374]
2. 使用 wget -O 下載并使用不同的文件名存儲
默認情況下,wget 將從最后一個正斜杠之后的最后一個單詞中選擇文件名,這可能并不總是合適的。
錯誤:以下示例將下載并存儲名稱為:download_script.php?src_id=7701 的文件
$ wget http://www.vim.org/scripts/download_script.php?src_id=7701
即使下載的文件是 zip 格式,它也會存儲在文件中,如下所示。
$ls download_script.php?src_id=7701
正確:要更正此問題,我們可以使用 -O 選項將輸出文件名指定為:
$ wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701
3. 使用 wget –limit-rate 指定下載速度/下載速率
在執行 wget 時,默認情況下它會嘗試占用全部可能的帶寬。當您在生產服務器上下載大文件時,這可能是不可接受的。因此,為了避免這種情況,我們可以使用 –limit-rate 來限制下載速度,如下所示。
在下面的例子中,下載速度限制為 200k
$ wget --limit-rate=200k http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
4. 使用 wget -c 繼續不完整的下載
使用 wget -c 選項重新啟動中途停止的下載,如下所示。
$ wget -c http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
當您啟動一個非常大的文件下載但在中間中斷時,這非常有用。您可以使用選項 -c 從中斷的位置開始下載,而不是再次開始整個下載
注意:如果下載在中途停止,當您在沒有選項 -c 的情況下再次重新啟動下載時,wget 將自動將 .1 附加到文件名,因為以前名稱的文件已經存在。如果 .1 的文件已經存在,它會在最后下載 .2 的文件。
5. 使用 wget -b 在后臺下載
對于大量下載,請使用 wget 選項 -b 將下載置于后臺,如下所示。
$ wget -b http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2 Continuing in background, pid 1984. Output will be written to `wget-log'.
它將啟動下載并將 shell 提示返回給您。您始終可以使用 tail -f 檢查下載狀態,如下所示。
$ tail -f wget-log Saving to: `strx25-0.9.2.1.tar.bz2.4' 0K .......... .......... .......... .......... .......... 1% 65.5K 57s 50K .......... .......... .......... .......... .......... 2% 85.9K 49s 100K .......... .......... .......... .......... .......... 3% 83.3K 47s 150K .......... .......... .......... .......... .......... 5% 86.6K 45s 200K .......... .......... .......... .......... .......... 6% 33.9K 56s 250K .......... .......... .......... .......... .......... 7% 182M 46s 300K .......... .......... .......... .......... .......... 9% 57.9K 47s
此外,請務必查看我們之前關于如何有效使用 tail 命令查看多個文件的多尾文章。
6. 使用 wget –user-agent 屏蔽用戶代理并像瀏覽器一樣顯示 wget
某些網站可以通過識別用戶代理不是瀏覽器來禁止您下載其頁面。因此,您可以使用 –user-agent 選項屏蔽用戶代理,并像瀏覽器一樣顯示 wget,如下所示。
$ wget --user-agent="Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092416 Firefox/3.0.3" URL-TO-DOWNLOAD
7. 使用 wget –spider 測試下載 URL
當您要進行預定下載時,您應該檢查下載是否會在預定時間正常進行。為此,請完全從計劃中復制該行,然后添加 –spider 選項進行檢查。
$ wget --spider -
如果給出的 URL 是正確的,它會說
$ wget --spider download-url Spider mode enabled. Check if remote file exists. HTTP request sent, awaiting response... 200 OK Length: unspecified [text/html] Remote file exists and could contain further links, but recursion is disabled -- not retrieving.
這樣可以確保下載將在預定的時間成功。但是當您提供錯誤的 URL 時,您將收到以下錯誤。
$ wget --spider download-url Spider mode enabled. Check if remote file exists. HTTP request sent, awaiting response... 404 Not Found Remote file does not exist -- broken link!!!
您可以在以下情況下使用蜘蛛選項:
在安排下載之前檢查。
以特定時間間隔監控網站是否可用。
檢查書簽中的頁面列表,并找出哪些頁面仍然存在。
8. 使用 wget –tries 增加重試嘗試的總數
如果互聯網連接有問題,并且下載文件很大,則下載可能會失敗。默認情況下 wget 重試 20 次以使下載成功。
如果需要,您可以使用 –tries 選項增加重試次數,如下所示。
$ wget --tries=75 DOWNLOAD-URL
9. 使用 Wget -i 下載多個文件 / URL
首先,將所有下載文件或 URL 存儲在一個文本文件中:
$ cat > download-file-list.txt URL1 URL2 URL3 URL4
接下來,使用 -i 選項將 download-file-list.txt 作為參數提供給 wget,如下所示。
$ wget -i download-filelist.txt
10. 使用 wget –mirror 下載完整的網站
以下是當您要下載完整網站并可供本地查看時要執行的命令行。
$ wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
–mirror : 打開適合鏡像的選項。
-p :下載正確顯示給定 HTML 頁面所需的所有文件。
--convert-links : 下載后,將文檔中的鏈接轉換為本地查看。
-P ./LOCAL-DIR :將所有文件和目錄保存到指定目錄。
11. 使用 wget –reject 在下載時拒絕某些文件類型
您找到了一個有用的網站,但不想下載圖片,您可以指定以下內容。
$ wget --reject=gif 要下載的網站
12. 使用 wget -o 將消息記錄到日志文件而不是 stderr
當您希望將日志重定向到日志文件而不是終端時。
$ wget -o download.log -
13. 使用 wget -Q 超過一定大小時退出下載
如果您想在超過 5 MB 時停止下載,您可以使用以下 wget 命令行。
$ wget -Q5m -i FILE-WHICH-HAS-URLS
注意:當您下載單個 URL 時,此配額不會生效。這與配額大小無關,當您指定單個文件時,所有內容都會被下載。此配額僅適用于遞歸下載。
14. 使用 wget -r -A 僅下載某些文件類型
您可以在以下情況下使用它:
從網站下載所有圖像
從網站下載所有視頻
從網站下載所有 PDF 文件
$ wget -r -A.pdf http://url-to-webpage-with-pdfs/
15. 使用 wget 進行 FTP 下載
您可以使用 wget 執行 FTP 下載,如下所示。
使用 Wget 進行匿名 FTP 下載
$ wget ftp-url
使用帶有用戶名和密碼驗證的 wget 進行 FTP 下載。
$ wget --ftp-user=USERNAME --ftp-password=PASSWORD DOWNLOAD-URL
FTP Linux 網站
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。