wget下載整個網頁css及js和其他命令的使用

我會向你展示10個 Wget 命令的實際案例. Wget 是一個用於下載文件的免費工具,它支持大多數常用的Internet協議,包括 HTTP, HTTPS, 以及 FTP.

Wget這個名字來源於 World Wide Web + get. Wget 有很多功能,可以很方便地做到下載大型文件,遞歸下載,一次下載多個文件以及鏡像web網站和FTP站點.

Wget是非交互式的,但是使用起來相當的靈活. 你可以在腳本,cron任務,終端等地方調用它.
它可以在用戶未登陸的情況下運行在後臺. 也就是說你可以開始下載文件,然後退出系統,wget會在後臺運行直到完成任務.

在本文中,我將演示一些wget的使用例子, 這些例子都很常見,比如下載文件,比如鏡像整個網站.

在演示前,我們先在 [[https://www.rosehosting.com/ubuntu-vps.html][Ubuntu 16.04]] [[https://www.rosehosting.com/ubuntu-vps.html][VPS]] 上安裝wget.

請注意,雖然該演示是在 Ubuntu 16.04 上進行的, 但是這些命令在其他 [[https://www.rosehosting.com/linux-vps-hosting.html][Linux]] 發行版中同樣適用.

登陸服務器並安裝wget

第一步是 [[https://www.rosehosting.com/blog/connect-to-your-linux-vps-via-ssh/][通過SSH登陸服務器]].

  apt-get update
  apt-get upgrade

然後安裝wget軟件包:

  apt-get install wget

安裝完成後,就可以開始使用wget命令了.
1. 下載單個文件

wget最常用也是最簡單的用法就是用來下載單個文件.

你可以用下面命令想下載最新版的WordPress

  wget https://wordpress.org/latest.zip

你會看到如下輸出

  --2017-10-14 03:46:06-- https://wordpress.org/latest.zip
  Resolving wordpress.org (wordpress.org)... 66.155.40.250, 66.155.40.249
  Connecting to wordpress.org (wordpress.org)|66.155.40.250|:443... connected.
  HTTP request sent, awaiting response... 200 OK
  Length: 8912693 (8.5M) [application/zip]
  Saving to: 'latest.zip'

  latest.zip 100%[=====================================================================================================>] 8.50M 5.03MB/s in 1.7s

  2017-10-14 03:46:07 (5.03 MB/s) - 'latest.zip' saved [8912693/8912693]

從中可以看出,wget還會顯示出下載的進度, 當前下載速度, 文件大小, 當前日期時間 以及待下載文件的名稱.

在我們的例子中, wget會下載文件並以”latest.zip”爲名存放到當前目錄中.zip” name.
2. 下載文件並重命名

若你想以其他名稱保存下載的文件,可以使用 =-O= 選項:

  wget -O wordpress.zip https://wordpress.org/latest.zip

wget會下載文件並以”wordpress.zip”爲名存放到當前目錄中.zip” name.
3. 指定下載目錄

使用 =-p= 選項指定下載目錄:

  wget -P /opt/wordpress https://wordpress.org/latest.zip

就會把文件下載到 /opt/wordpress 目錄中.
4. 限制下載速度

當你下載大型文件時,可能耗時很長,這事你可以限制wget的下載速度以防止它把整個帶寬都佔滿了.

下面命令就將下載速度限制在了每秒300k:

  wget --limit-rate=300k https://wordpress.org/latest.zip

5. 斷點續傳

在下載大型文件時,可能會由於網絡連接抖動造成下載中斷.

爲了避免重新下載,可以使用 =-c= 選項進行斷點續傳:

  wget -c https://wordpress.org/latest.zip

若下載中斷後你沒有用 =-c= 進行斷點續傳,而是重新下載, wget 會在文件名後加上 “.1” 防止與前面下載的文件重名.
6. 後臺下載

當下載大型文件時, 可以使用 =-b= 選項讓wget在後臺下載文件.

  wget -b http://example.com/big-file.zip

輸出內容會寫入同目錄下的 “wget-log” 文件, 這樣你就可以用下面命令來檢查下載狀態了:

  tail -f wget-log

7. 設置重試次數

若網絡有問題導致下載時常中斷,就可以使用 =-tries= 選項增加重試次數:

  wget -tries=100 https://example.com/file.zip

8. 下載多文件

若你想同時下載多個文件,你可以將要在的文件URL存放在一個文本文件中(假設該文件名爲download.txt).
下面命令創建一個文本文件:

  touch download.txt

然後可以用 nano 編輯該文件,輸入所有想下載的文件URL:

  nano download.txt

  http://example.com/file1.zip

  http://example.com/file2.zip

  http://example.com/file3.zip

保存該文件, 然後使用 =-i= 選項下載文本文件中保存的所有文件:

  wget -i download.txt

9. 下載FTP文件

wget還支持下載FTP文件,可以爲它設置用戶名和密碼,如下所示:

  wget --ftp-user=username --ftp-password=password ftp://url-to-ftp-file

10. 下載整個網站

你甚至可以用wget下載完整的站點, 然後進行離線瀏覽. 方法是使用如下命令:

wget --mirror --convert-links --page-requisites --no-parent -P /path/to/download https://example-domain.com

—mirror 會開啓鏡像所需要的所有選項.

–convert-links 會將所有鏈接轉換成本地鏈接以便離線瀏覽.

–page-requisites 表示下載包括CSS樣式文件,圖片等所有所需的文件,以便離線時能正確地現實頁面.

–no-parent 用於限制只下載網站的某一部分內容.

此外, 你可以使用 =P= 設置下載路徑.

以上例子覆蓋了wget最常用的幾個場景.[[https://www.gnu.org/software/wget/manual/wget.html][想更多地瞭解wget]], 你可以使用 =man wget= 查看它的幫助文檔.

若你跟我們一樣有一臺 [[https://www.rosehosting.com/linux-vps-hosting.html][Linux VPS]] , 那麼你只需要讓Linux管理員幫忙在你的服務器上安裝一下wget命令或者爲他們提供一些使用wget的建議.
他們是 24/7 在線的,會幫你解決這個問題.

轉自:https://github.com/lujun9972/linux-document/blob/master/examples/10 wget command examples.org

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章