日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

【Linux】一步一步学Linux——wget命令(192)

發(fā)布時(shí)間:2024/4/21 linux 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Linux】一步一步学Linux——wget命令(192) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

00. 目錄

文章目錄

    • 00. 目錄
    • 01. 命令概述
    • 02. 命令格式
    • 03. 常用選項(xiàng)
    • 04. 參考示例
    • 05. 附錄

01. 命令概述

wget命令用來(lái)從指定的URL下載文件。wget非常穩(wěn)定,它在帶寬很窄的情況下和不穩(wěn)定網(wǎng)絡(luò)中有很強(qiáng)的適應(yīng)性,如果是由于網(wǎng)絡(luò)的原因下載失敗,wget會(huì)不斷的嘗試,直到整個(gè)文件下載完畢。如果是服務(wù)器打斷下載過(guò)程,它會(huì)再次聯(lián)到服務(wù)器上從停止的地方繼續(xù)下載。這對(duì)從那些限定了鏈接時(shí)間的服務(wù)器上下載大文件非常有用。

wget支持HTTP,HTTPS和FTP協(xié)議,可以使用HTTP代理。所謂的自動(dòng)下載是指,wget可以在用戶退出系統(tǒng)的之后在后臺(tái)執(zhí)行。這意味這你可以登錄系統(tǒng),啟動(dòng)一個(gè)wget下載任務(wù),然后退出系統(tǒng),wget將在后臺(tái)執(zhí)行直到任務(wù)完成,相對(duì)于其它大部分瀏覽器在下載大量數(shù)據(jù)時(shí)需要用戶一直的參與,這省去了極大的麻煩。

02. 命令格式

用法: wget [選項(xiàng)]... [URL]...

03. 常用選項(xiàng)

長(zhǎng)選項(xiàng)所必須的參數(shù)在使用短選項(xiàng)時(shí)也是必須的。啟動(dòng):-V, --version 顯示 Wget 的版本信息并退出。-h, --help 打印此幫助。-b, --background 啟動(dòng)后轉(zhuǎn)入后臺(tái)。-e, --execute=COMMAND 運(yùn)行一個(gè)“.wgetrc”風(fēng)格的命令。日志和輸入文件:-o, --output-file=FILE 將日志信息寫入 FILE。-a, --append-output=FILE 將信息添加至 FILE。-d, --debug 打印大量調(diào)試信息。-q, --quiet 安靜模式 (無(wú)信息輸出)。-v, --verbose 詳盡的輸出 (此為默認(rèn)值)。-nv, --no-verbose 關(guān)閉詳盡輸出,但不進(jìn)入安靜模式。-i, --input-file=FILE 下載本地或外部 FILE 中的 URLs。-F, --force-html 把輸入文件當(dāng)成 HTML 文件。-B, --base=URL 解析與 URL 相關(guān)的HTML 輸入文件 (由 -i -F 選項(xiàng)指定)。--config=FILE Specify config file to use.下載:-t, --tries=NUMBER 設(shè)置重試次數(shù)為 NUMBER (0 代表無(wú)限制)。--retry-connrefused 即使拒絕連接也是重試。-O, --output-document=FILE 將文檔寫入 FILE。-nc, --no-clobber skip downloads that would download toexisting files (overwriting them).-c, --continue 斷點(diǎn)續(xù)傳下載文件。--progress=TYPE 選擇進(jìn)度條類型。-N, --timestamping 只獲取比本地文件新的文件。--no-use-server-timestamps 不用服務(wù)器上的時(shí)間戳來(lái)設(shè)置本地文件。-S, --server-response 打印服務(wù)器響應(yīng)。--spider 不下載任何文件。-T, --timeout=SECONDS 將所有超時(shí)設(shè)為 SECONDS 秒。--dns-timeout=SECS 設(shè)置 DNS 查尋超時(shí)為 SECS 秒。--connect-timeout=SECS 設(shè)置連接超時(shí)為 SECS 秒。--read-timeout=SECS 設(shè)置讀取超時(shí)為 SECS 秒。-w, --wait=SECONDS 等待間隔為 SECONDS 秒。--waitretry=SECONDS 在獲取文件的重試期間等待 1..SECONDS 秒。--random-wait 獲取多個(gè)文件時(shí),每次隨機(jī)等待間隔0.5*WAIT...1.5*WAIT 秒。--no-proxy 禁止使用代理。-Q, --quota=NUMBER 設(shè)置獲取配額為 NUMBER 字節(jié)。--bind-address=ADDRESS 綁定至本地主機(jī)上的 ADDRESS (主機(jī)名或是 IP)。--limit-rate=RATE 限制下載速率為 RATE。--no-dns-cache 關(guān)閉 DNS 查尋緩存。--restrict-file-names=OS 限定文件名中的字符為 OS 允許的字符。--ignore-case 匹配文件/目錄時(shí)忽略大小寫。-4, --inet4-only 僅連接至 IPv4 地址。-6, --inet6-only 僅連接至 IPv6 地址。--prefer-family=FAMILY 首先連接至指定協(xié)議的地址FAMILY 為 IPv6,IPv4 或是 none。--user=USER 將 ftp 和 http 的用戶名均設(shè)置為 USER。--password=PASS 將 ftp 和 http 的密碼均設(shè)置為 PASS。--ask-password 提示輸入密碼。--no-iri 關(guān)閉 IRI 支持。--local-encoding=ENC IRI (國(guó)際化資源標(biāo)識(shí)符) 使用 ENC 作為本地編碼。--remote-encoding=ENC 使用 ENC 作為默認(rèn)遠(yuǎn)程編碼。--unlink remove file before clobber.目錄:-nd, --no-directories 不創(chuàng)建目錄。-x, --force-directories 強(qiáng)制創(chuàng)建目錄。-nH, --no-host-directories 不要?jiǎng)?chuàng)建主目錄。--protocol-directories 在目錄中使用協(xié)議名稱。-P, --directory-prefix=PREFIX 以 PREFIX/... 保存文件--cut-dirs=NUMBER 忽略遠(yuǎn)程目錄中 NUMBER 個(gè)目錄層。HTTP 選項(xiàng):--http-user=USER 設(shè)置 http 用戶名為 USER。--http-password=PASS 設(shè)置 http 密碼為 PASS。--no-cache 不在服務(wù)器上緩存數(shù)據(jù)。--default-page=NAME 改變默認(rèn)頁(yè)(默認(rèn)頁(yè)通常是“index.html”)。-E, --adjust-extension 以合適的擴(kuò)展名保存 HTML/CSS 文檔。--ignore-length 忽略頭部的‘Content-Length’區(qū)域。--header=STRING 在頭部插入 STRING。--max-redirect 每頁(yè)所允許的最大重定向。--proxy-user=USER 使用 USER 作為代理用戶名。--proxy-password=PASS 使用 PASS 作為代理密碼。--referer=URL 在 HTTP 請(qǐng)求頭包含‘Referer: URL’。--save-headers 將 HTTP 頭保存至文件。-U, --user-agent=AGENT 標(biāo)識(shí)為 AGENT 而不是 Wget/VERSION。--no-http-keep-alive 禁用 HTTP keep-alive (永久連接)。--no-cookies 不使用 cookies。--load-cookies=FILE 會(huì)話開始前從 FILE 中載入 cookies。--save-cookies=FILE 會(huì)話結(jié)束后保存 cookies 至 FILE。--keep-session-cookies 載入并保存會(huì)話 (非永久) cookies。--post-data=STRING 使用 POST 方式;把 STRING 作為數(shù)據(jù)發(fā)送。--post-file=FILE 使用 POST 方式;發(fā)送 FILE 內(nèi)容。--content-disposition 當(dāng)選中本地文件名時(shí)允許 Content-Disposition 頭部 (尚在實(shí)驗(yàn))。--auth-no-challenge 發(fā)送不含服務(wù)器詢問(wèn)的首次等待的基本 HTTP 驗(yàn)證信息。HTTPS (SSL/TLS) 選項(xiàng):--secure-protocol=PR 選擇安全協(xié)議,可以是 auto、SSLv2、SSLv3 或是 TLSv1 中的一個(gè)。--no-check-certificate 不要驗(yàn)證服務(wù)器的證書。--certificate=FILE 客戶端證書文件。--certificate-type=TYPE 客戶端證書類型,PEM 或 DER。--private-key=FILE 私鑰文件。--private-key-type=TYPE 私鑰文件類型,PEM 或 DER。--ca-certificate=FILE 帶有一組 CA 認(rèn)證的文件。--ca-directory=DIR 保存 CA 認(rèn)證的哈希列表的目錄。--random-file=FILE 帶有生成 SSL PRNG 的隨機(jī)數(shù)據(jù)的文件。--egd-file=FILE 用于命名帶有隨機(jī)數(shù)據(jù)的 EGD 套接字的文件。FTP 選項(xiàng):--ftp-user=USER 設(shè)置 ftp 用戶名為 USER。--ftp-password=PASS 設(shè)置 ftp 密碼為 PASS。--no-remove-listing 不要?jiǎng)h除‘.listing’文件。--no-glob 不在 FTP 文件名中使用通配符展開。--no-passive-ftp 禁用“passive”傳輸模式。--retr-symlinks 遞歸目錄時(shí),獲取鏈接的文件 (而非目錄)。遞歸下載:-r, --recursive 指定遞歸下載。-l, --level=NUMBER 最大遞歸深度 (inf 或 0 代表無(wú)限制,即全部下載)。--delete-after 下載完成后刪除本地文件。-k, --convert-links 讓下載得到的 HTML 或 CSS 中的鏈接指向本地文件。-K, --backup-converted 在轉(zhuǎn)換文件 X 前先將它備份為 X.orig。-m, --mirror -N -r -l inf --no-remove-listing 的縮寫形式。-p, --page-requisites 下載所有用于顯示 HTML 頁(yè)面的圖片之類的元素。--strict-comments 用嚴(yán)格方式 (SGML) 處理 HTML 注釋。遞歸接受/拒絕:-A, --accept=LIST 逗號(hào)分隔的可接受的擴(kuò)展名列表。-R, --reject=LIST 逗號(hào)分隔的要拒絕的擴(kuò)展名列表。-D, --domains=LIST 逗號(hào)分隔的可接受的域列表。--exclude-domains=LIST 逗號(hào)分隔的要拒絕的域列表。--follow-ftp 跟蹤 HTML 文檔中的 FTP 鏈接。--follow-tags=LIST 逗號(hào)分隔的跟蹤的 HTML 標(biāo)識(shí)列表。--ignore-tags=LIST 逗號(hào)分隔的忽略的 HTML 標(biāo)識(shí)列表。-H, --span-hosts 遞歸時(shí)轉(zhuǎn)向外部主機(jī)。-L, --relative 只跟蹤有關(guān)系的鏈接。-I, --include-directories=LIST 允許目錄的列表。--trust-server-names use the name specified by the redirectionurl last component.-X, --exclude-directories=LIST 排除目錄的列表。-np, --no-parent 不追溯至父目錄。

04. 參考示例

4.1 使用wget下載單個(gè)文件

[root@localhost test]# wget https://github.com/jindeng/sz14.git --2019-08-30 10:26:02-- https://github.com/jindeng/sz14.git 正在解析主機(jī) github.com (github.com)... 13.250.177.223 正在連接 github.com (github.com)|13.250.177.223|:443... 已連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 301 Moved Permanently 位置:https://github.com/jindeng/sz14 [跟隨至新的 URL] --2019-08-30 10:26:03-- https://github.com/jindeng/sz14 再次使用存在的到 github.com:443 的連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 200 OK 長(zhǎng)度:未指定 [text/html] 正在保存至: “sz14.git”[ <=> ] 76,845 --.-K/s 用時(shí) 0.1s 2019-08-30 10:26:04 (710 KB/s) - “sz14.git” 已保存 [76845][root@localhost test]#

4.2 下載并以不同的文件名保存

[root@localhost test]# wget -O test.git https://github.com/jindeng/sz14.git --2019-08-30 10:27:38-- https://github.com/jindeng/sz14.git 正在解析主機(jī) github.com (github.com)... 13.250.177.223 正在連接 github.com (github.com)|13.250.177.223|:443... 已連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 301 Moved Permanently 位置:https://github.com/jindeng/sz14 [跟隨至新的 URL] --2019-08-30 10:27:38-- https://github.com/jindeng/sz14 再次使用存在的到 github.com:443 的連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 200 OK 長(zhǎng)度:未指定 [text/html] 正在保存至: “test.git”[ <=> ] 76,845 307KB/s 用時(shí) 0.2s 2019-08-30 10:27:39 (307 KB/s) - “test.git” 已保存 [76845][root@localhost test]#

4.3 wget限速下載

[root@localhost test]# wget --limit-rate=300k https://github.com/jindeng/sz14.git --2019-08-30 10:30:03-- https://github.com/jindeng/sz14.git 正在解析主機(jī) github.com (github.com)... 13.229.188.59 正在連接 github.com (github.com)|13.229.188.59|:443... 已連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 301 Moved Permanently 位置:https://github.com/jindeng/sz14 [跟隨至新的 URL] --2019-08-30 10:30:04-- https://github.com/jindeng/sz14 再次使用存在的到 github.com:443 的連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 200 OK 長(zhǎng)度:未指定 [text/html] 正在保存至: “sz14.git”[ <=> ] 76,831 308KB/s 用時(shí) 0.2s 2019-08-30 10:30:05 (308 KB/s) - “sz14.git” 已保存 [76831][root@localhost test]#

當(dāng)你執(zhí)行wget的時(shí)候,它默認(rèn)會(huì)占用全部可能的寬帶下載。但是當(dāng)你準(zhǔn)備下載一個(gè)大文件,而你還需要下載其它文件時(shí)就有必要限速了。

4.4 使用wget斷點(diǎn)續(xù)傳

[root@localhost test]# wget -c https://github.com/jindeng/sz14.git --2019-08-30 10:30:30-- https://github.com/jindeng/sz14.git 正在解析主機(jī) github.com (github.com)... 13.229.188.59 正在連接 github.com (github.com)|13.229.188.59|:443... 已連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 301 Moved Permanently 位置:https://github.com/jindeng/sz14 [跟隨至新的 URL] --2019-08-30 10:30:30-- https://github.com/jindeng/sz14 再次使用存在的到 github.com:443 的連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 200 OK 長(zhǎng)度:未指定 [text/html] 正在保存至: “sz14.git”[ <=> ] 76,831 --.-K/s 用時(shí) 0.1s 2019-08-30 10:30:31 (665 KB/s) - “sz14.git” 已保存 [76831][root@localhost test]#

使用wget -c重新啟動(dòng)下載中斷的文件,對(duì)于我們下載大文件時(shí)突然由于網(wǎng)絡(luò)等原因中斷非常有幫助,我們可以繼續(xù)接著下載而不是重新下載一個(gè)文件。需要繼續(xù)中斷的下載時(shí)可以使用-c參數(shù)。

4.5 使用wget后臺(tái)下載

[root@localhost test]# wget -b https://github.com/jindeng/sz14.git 繼續(xù)在后臺(tái)運(yùn)行,pid 為 4592。 將把輸出寫入至 “wget-log”。

對(duì)于下載非常大的文件的時(shí)候,我們可以使用參數(shù)-b進(jìn)行后臺(tái)下載,你可以使用以下命令來(lái)察看下載進(jìn)度:

[root@localhost test]# tail -f wget-log 再次使用存在的到 github.com:443 的連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 200 OK 長(zhǎng)度:未指定 [text/html] 正在保存至: “sz14.git”0K .......... .......... .......... .......... .......... 106K50K .......... .......... ..... 4.40M=0.5s2019-08-30 10:31:19 (157 KB/s) - “sz14.git” 已保存 [76831]

4.6 偽裝代理名稱下載

[root@localhost test]# wget --user-agent="Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16" https://github.com/jindeng/sz14.git --2019-08-30 10:35:46-- https://github.com/jindeng/sz14.git 正在解析主機(jī) github.com (github.com)... 13.229.188.59 正在連接 github.com (github.com)|13.229.188.59|:443... 已連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 301 Moved Permanently 位置:https://github.com/jindeng/sz14 [跟隨至新的 URL] --2019-08-30 10:35:47-- https://github.com/jindeng/sz14 再次使用存在的到 github.com:443 的連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 200 OK 長(zhǎng)度:未指定 [text/html] 正在保存至: “sz14.git.1”[ <=> ] 78,355 128KB/s 用時(shí) 0.6s 2019-08-30 10:35:48 (128 KB/s) - “sz14.git.1” 已保存 [78355][root@localhost test]#

有些網(wǎng)站能通過(guò)根據(jù)判斷代理名稱不是瀏覽器而拒絕你的下載請(qǐng)求。不過(guò)你可以通過(guò)--user-agent參數(shù)偽裝。

4.7 測(cè)試下載鏈接

[root@localhost test]# wget --spider https://github.com/jindeng/sz14.git 開啟 Spider 模式。檢查是否存在遠(yuǎn)程文件。 --2019-08-30 10:37:47-- https://github.com/jindeng/sz14.git 正在解析主機(jī) github.com (github.com)... 52.74.223.119 正在連接 github.com (github.com)|52.74.223.119|:443... 已連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 301 Moved Permanently 位置:https://github.com/jindeng/sz14 [跟隨至新的 URL] 開啟 Spider 模式。檢查是否存在遠(yuǎn)程文件。 --2019-08-30 10:37:47-- https://github.com/jindeng/sz14 正在連接 github.com (github.com)|52.74.223.119|:443... 已連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 200 OK 長(zhǎng)度:未指定 [text/html] 存在遠(yuǎn)程文件且該文件可能含有更深層的鏈接, 但不能進(jìn)行遞歸操作 -- 無(wú)法獲取。[root@localhost test]#

當(dāng)你打算進(jìn)行定時(shí)下載,你應(yīng)該在預(yù)定時(shí)間測(cè)試下載鏈接是否有效。我們可以增加--spider參數(shù)進(jìn)行檢查。

你可以在以下幾種情況下使用--spider參數(shù):

  • 定時(shí)下載之前進(jìn)行檢查
  • 間隔檢測(cè)網(wǎng)站是否可用
  • 檢查網(wǎng)站頁(yè)面的死鏈接

4.8 增加重試次數(shù)

[root@localhost test]# wget --tries=40 https://github.com/jindeng/sz14.git --2019-08-30 10:40:10-- https://github.com/jindeng/sz14.git 正在解析主機(jī) github.com (github.com)... 52.74.223.119 正在連接 github.com (github.com)|52.74.223.119|:443... 已連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 301 Moved Permanently 位置:https://github.com/jindeng/sz14 [跟隨至新的 URL] --2019-08-30 10:40:10-- https://github.com/jindeng/sz14 再次使用存在的到 github.com:443 的連接。 已發(fā)出 HTTP 請(qǐng)求,正在等待回應(yīng)... 200 OK 長(zhǎng)度:未指定 [text/html] 正在保存至: “sz14.git.2”[ <=> ] 76,846 138KB/s 用時(shí) 0.5s 2019-08-30 10:40:11 (138 KB/s) - “sz14.git.2” 已保存 [76846][root@localhost test]#

如果網(wǎng)絡(luò)有問(wèn)題或下載一個(gè)大文件也有可能失敗。wget默認(rèn)重試20次連接下載文件。如果需要,你可以使用--tries增加重試次數(shù)。

4.9 下載多個(gè)文件

[root@localhost test]# wget -i filelist.txt

保存一份下載鏈接文件

filelist.txt文件內(nèi)容就是下載鏈接地址

4.10 鏡像網(wǎng)站

[root@localhost test]# wget --mirror -p --convert-links -P ./LOCAL URL [root@localhost test]#

下載整個(gè)網(wǎng)站到本地。

  • --miror開戶鏡像下載。
  • -p下載所有為了html頁(yè)面顯示正常的文件。
  • --convert-links下載后,轉(zhuǎn)換成本地的鏈接。
  • -P ./LOCAL保存所有文件和目錄到本地指定目錄。

4.11 過(guò)濾指定格式下載

[root@localhost test]# wget --reject=gif https://github.com/jindeng/sz14.git [root@localhost test]#

下載一個(gè)網(wǎng)站,但你不希望下載圖片,可以使用這條命令。

4.12 把下載信息存入日志文件

[root@localhost test]# wget -o download.log https://github.com/jindeng/sz14.git [root@localhost test]#

不希望下載信息直接顯示在終端而是在一個(gè)日志文件,可以使用。

4.13 限制總下載文件大小

[root@localhost test]# wget -Q5m -i filelist.txt [root@localhost test]#

當(dāng)你想要下載的文件超過(guò)5M而退出下載,你可以使用。注意:這個(gè)參數(shù)對(duì)單個(gè)文件下載不起作用,只能遞歸下載時(shí)才有效。

4.14下載指定格式文件

[root@localhost test]# wget -r -A.pdf url [root@localhost test]#

可以在以下情況使用該功能:

  • 下載一個(gè)網(wǎng)站的所有圖片。
  • 下載一個(gè)網(wǎng)站的所有視頻。
  • 下載一個(gè)網(wǎng)站的所有PDF文件。

4.15 使用wget匿名ftp下載

[root@localhost test]# wget ftp-url [root@localhost test]#

4.16 使用wget用戶名和密碼認(rèn)證的ftp下載

[root@localhost test]# wget --ftp-user=USERNAME --ftp-password=PASSWORD url [root@localhost test]#

4.17 指定下載目錄

[root@localhost test]# wget -P /home/download http://tel.mirrors.163.com/centos/6.4/isos/x86_64/CentOS-6.4-x86_64-bin-DVD1.iso

4.18 下載目錄中所有的文件

[root@localhost test]# wget -r -np -nd http://tel.mirrors.163.com/centos/6.4/os/x86_64/

4.19 下載一個(gè)網(wǎng)站的本地鏡像

[root@localhost test]# wget -c -r --level=1 -k -p -np http://docs.Python.org/2/tutorial/index.html

4.20 獲取遠(yuǎn)程文件內(nèi)容,以標(biāo)準(zhǔn)輸出 + 管道方式直接運(yùn)行

[root@localhost test]# wget -O- http://xxx.bashcommand.com/test.sh | sh

05. 附錄

參考:【Linux】一步一步學(xué)Linux系列教程匯總

總結(jié)

以上是生活随笔為你收集整理的【Linux】一步一步学Linux——wget命令(192)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。