Wget用法、參數解釋

wget功能的強大就不用多說了,在高手手裏,它就像是個無往不利的殺人利器,下面是轉載的一篇Wget用法、參數解釋的比較好的一個文章,固然最好的老師仍是man wget 是一個從網絡上自動下載文件的自由工具。它支持HTTP,HTTPS和FTP協議,可使用HTTP代理. 所謂的自動下載是指,wget能夠在用戶退出系統的以後在後臺執行。這意味這你能夠登陸系統,啓動一個wget下載任務,而後退出系統,wget將在後臺 執行直到任務完成,相對於其它大部分瀏覽器在下載大量數據時須要用戶一直的參與,這省去了極大的麻煩。 wget 能夠跟蹤HTML頁面上的連接依次下載來建立遠程服務器的本地版本,徹底重建原始站點的目錄結構。這又常被稱做"遞歸下載"。在遞歸下載的時候,wget 遵循Robot Exclusion標準(/robots.txt). wget能夠在下載的同時,將連接轉換成指向本地文件,以方便離線瀏覽。 wget 很是穩定,它在帶寬很窄的狀況下和不穩定網絡中有很強的適應性.若是是因爲網絡的緣由下載失敗,wget會不斷的嘗試,直到整個文件下載完畢。若是是服務 器打斷下載過程,它會再次聯到服務器上從中止的地方繼續下載。這對從那些限定了連接時間的服務器上下載大文件很是有用。 wget的常見用法 wget使用起來仍是比較簡單的, 基本的語法是:wget [參數列表] "URL" 用""引發來能夠避免因URL中有特殊字符形成的下載出錯。 下面就結合具體的例子來講明一下wget的用法。 一、下載整個http或者ftp站點。 wget http://place.your.url/here 這個命令能夠將http://place.your.url/here 首頁下載下來。使用-x會強制創建服務器上如出一轍的目錄,若是使用-nd參數,那麼服務器上下載的全部內容都會加到本地當前目錄。 wget -r http://place.your.url/here 這 個命令會按照遞歸的方法,下載服務器上全部的目錄和文件,實質就是下載整個網站。這個命令必定要當心使用,由於在下載的時候,被下載網站指向的全部地址同 樣會被下載,所以,若是這個網站引用了其餘網站,那麼被引用的網站也會被下載下來!基於這個緣由,這個參數不經常使用。能夠用-l number參數來指定下載的層次。例如只下載兩層,那麼使用-l 2。 要是您想製做鏡像站點,那麼可使用-m參數,例如:wget -m http://place.your.url/here 這時wget會自動判斷合適的參數來製做鏡像站點。此時,wget會登陸到服務器上,讀入robots.txt並按robots.txt的規定來執行。 二、斷點續傳。 當文件特別大或者網絡特別慢的時候,每每一個文件尚未下載完,鏈接就已經被切斷,此時就須要斷點續傳。wget的斷點續傳是自動的,只須要使用-c參數,例如: wget -c http://the.url.of/incomplete/file 使用斷點續傳要求服務器支持斷點續傳。-t參數表示重試次數,例如須要重試100次,那麼就寫-t 100,若是設成-t 0,那麼表示無窮次重試,直到鏈接成功。-T參數表示超時等待時間,例如-T 120,表示等待120秒鏈接不上就算超時。 三、批量下載。 若是有多個文件須要下載,那麼能夠生成一個文件,把每一個文件的URL寫一行,例如生成文件download.txt,而後用命令:wget -i download.txt 這樣就會把download.txt裏面列出的每一個URL都下載下來。(若是列的是文件就下載文件,若是列的是網站,那麼下載首頁) 四、選擇性的下載。 能夠指定讓wget只下載一類文件,或者不下載什麼文件。例如: wget -m --reject=gif http://target.web.site/subdirectory 表示下載http://target.web.site/subdirectory,可是忽略gif文件。--accept=LIST 能夠接受的文件類型,--reject=LIST拒絕接受的文件類型。 五、密碼和認證。 wget只能處理利用用戶名/密碼方式限制訪問的網站,能夠利用兩個參數: --http-user=USER設置HTTP用戶 --http-passwd=PASS設置HTTP密碼 對於須要證書作認證的網站,就只能利用其餘下載工具了,例如curl。 六、利用代理服務器進行下載。 若是用戶的網絡須要通過代理服務器,那麼可讓wget經過代理服務器進行文件的下載。此時須要在當前用戶的目錄下建立一個.wgetrc文件。文件中能夠設置代理服務器: http-proxy = 111.111.111.111:8080 ftp-proxy = 111.111.111.111:8080 分別表示http的代理服務器和ftp的代理服務器。若是代理服務器須要密碼則使用: --proxy-user=USER設置代理用戶 --proxy-passwd=PASS設置代理密碼 這兩個參數。 使用參數--proxy=on/off 使用或者關閉代理。 wget還有不少有用的功能,須要用戶去挖掘。 wget的使用格式 Usage: wget [OPTION]... [URL]... * 用wget作站點鏡像: wget -r -p -np -k http://dsec.pku.edu.cn/~usr_name/ # 或者 wget -m http://dsec.pku.edu.cn/~usr_name/ * 在不穩定的網絡上下載一個部分下載的文件,以及在空閒時段下載 wget -t 0 -w 31 -c http://dsec.pku.edu.cn/BBC.avi -o down.log & # 或者從filelist讀入要下載的文件列表 wget -t 0 -w 31 -c -B ftp://dsec.pku.edu.cn/linuxsoft -i filelist.txt -o down.log & 上面的代碼還能夠用來在網絡比較空閒的時段進行下載。個人用法是:在mozilla中將不方便當時下載的URL連接拷貝到內存中而後粘貼到文件filelist.txt中,在晚上要出去系統前執行上面代碼的第二條。 * 使用代理下載 wget -Y on -p -k https://sourceforge.net/projects/wvware/ 代理能夠在環境變量或wgetrc文件中設定 # 在環境變量中設定代理 export PROXY=http://211.90.168.94:8080/ # 在~/.wgetrc中設定代理 http_proxy = http://proxy.yoyodyne.com:18023/ ftp_proxy = http://proxy.yoyodyne.com:18023/ wget各類選項分類列表 * 啓動 -V, --version 顯示wget的版本後退出 -h, --help 打印語法幫助 -b, --background 啓動後轉入後臺執行 -e, --execute=COMMAND 執行`.wgetrc'格式的命令,wgetrc格式參見/etc/wgetrc或~/.wgetrc * 記錄和輸入文件 -o, --output-file=FILE 把記錄寫到FILE文件中 -a, --append-output=FILE 把記錄追加到FILE文件中 -d, --debug 打印調試輸出 -q, --quiet 安靜模式(沒有輸出) -v, --verbose 冗長模式(這是缺省設置) -nv, --non-verbose 關掉冗長模式,但不是安靜模式 -i, --input-file=FILE 下載在FILE文件中出現的URLs -F, --force-html 把輸入文件看成HTML格式文件對待 -B, --base=URL 將URL做爲在-F -i參數指定的文件中出現的相對連接的前綴 --sslcertfile=FILE 可選客戶端證書 --sslcertkey=KEYFILE 可選客戶端證書的KEYFILE --egd-file=FILE 指定EGD socket的文件名 * 下載 --bind-address=ADDRESS 指定本地使用地址(主機名或IP,當本地有多個IP或名字時使用) -t, --tries=NUMBER 設定最大嘗試連接次數(0 表示無限制). -O --output-document=FILE 把文檔寫到FILE文件中 -nc, --no-clobber 不要覆蓋存在的文件或使用.#前綴 -c, --continue 接着下載沒下載完的文件 --progress=TYPE 設定進程條標記 -N, --timestamping 不要從新下載文件除非比本地文件新 -S, --server-response 打印服務器的迴應 --spider 不下載任何東西 -T, --timeout=SECONDS 設定響應超時的秒數 -w, --wait=SECONDS 兩次嘗試之間間隔SECONDS秒 --waitretry=SECONDS 在從新連接之間等待1...SECONDS秒 --random-wait 在下載之間等待0...2*WAIT秒 -Y, --proxy=on/off 打開或關閉代理 -Q, --quota=NUMBER 設置下載的容量限制 --limit-rate=RATE 限定下載輸率 * 目錄 -nd --no-directories 不建立目錄 -x, --force-directories 強制建立目錄 -nH, --no-host-directories 不建立主機目錄 -P, --directory-prefix=PREFIX 將文件保存到目錄 PREFIX/... --cut-dirs=NUMBER 忽略 NUMBER層遠程目錄 * HTTP 選項 --http-user=USER 設定HTTP用戶名爲 USER. --http-passwd=PASS 設定http密碼爲 PASS. -C, --cache=on/off 容許/不容許服務器端的數據緩存 (通常狀況下容許). -E, --html-extension 將全部text/html文檔以.html擴展名保存 --ignore-length 忽略 `Content-Length'頭域 --header=STRING 在headers中插入字符串 STRING --proxy-user=USER 設定代理的用戶名爲 USER --proxy-passwd=PASS 設定代理的密碼爲 PASS --referer=URL 在HTTP請求中包含 `Referer: URL'頭 -s, --save-headers 保存HTTP頭到文件 -U, --user-agent=AGENT 設定代理的名稱爲 AGENT而不是 Wget/VERSION. --no-http-keep-alive 關閉 HTTP活動連接 (永遠連接). --cookies=off 不使用 cookies. --load-cookies=FILE 在開始會話前從文件 FILE中加載cookie --save-cookies=FILE 在會話結束後將 cookies保存到 FILE文件中 * FTP 選項 -nr, --dont-remove-listing 不移走 `.listing'文件 -g, --glob=on/off 打開或關閉文件名的 globbing機制 --passive-ftp 使用被動傳輸模式 (缺省值). --active-ftp 使用主動傳輸模式 --retr-symlinks 在遞歸的時候,將連接指向文件(而不是目錄) * 遞歸下載 -r, --recursive 遞歸下載--慎用! -l, --level=NUMBER 最大遞歸深度 (inf 或 0 表明無窮). --delete-after 在如今完畢後局部刪除文件 -k, --convert-links 轉換非相對連接爲相對連接 -K, --backup-converted 在轉換文件X以前,將之備份爲 X.orig -m, --mirror 等價於 -r -N -l inf -nr. -p, --page-requisites 下載顯示HTML文件的全部圖片 * 遞歸下載中的包含和不包含(accept/reject) -A, --accept=LIST 分號分隔的被接受擴展名的列表 -R, --reject=LIST 分號分隔的不被接受的擴展名的列表 -D, --domains=LIST 分號分隔的被接受域的列表 --exclude-domains=LIST 分號分隔的不被接受的域的列表 --follow-ftp 跟蹤HTML文檔中的FTP連接 --follow-tags=LIST 分號分隔的被跟蹤的HTML標籤的列表 -G, --ignore-tags=LIST 分號分隔的被忽略的HTML標籤的列表 -H, --span-hosts 當遞歸時轉到外部主機 -L, --relative 僅僅跟蹤相對連接 -I, --include-directories=LIST 容許目錄的列表 -X, --exclude-directories=LIST 不被包含目錄的列表 -np, --no-parent 不要追溯到父目錄
相關文章
相關標籤/搜索