wget用法


今天學習正則表達式,然后就去網上搜點資料,然后就谷歌“正則表達式 filetype:chm -csdn”,想要點CHM文檔,不想在CSDN里面找資源,里面很多東西都要積分,我哪有那么多積分啊,就把所有的關於CSDN的全部去掉了,說來也巧,就搜到一個下載中心了,更巧的是里面有很多其他資源,挺好的,就想全部下載下來,點開一個資源鏈接,出現了這樣一個界面:

 

還是第一次遇到這種情況, "只允許在Linux/Unix下通過Wget、Curl等命令下載本軟件",真有趣,幸好我正在使用linux,然后就用wget下載唄,“wget+URL”就能下載,可是這個網站里面的好東西好多啊,都想下載下來,點了幾個我就煩了,太麻煩了,百度一下wget的用法吧,還真有,研究了一下,我需要的參數是遞歸下載整個網站,哈哈,加上-r就行了,這樣就把里面的資源全部下載下來了,又看了一下網站,里面有點音樂,不用下載,就把音樂排除,加上-R mp3,就不下載mp3文件了,剛才我已經下載了一些軟件了,不想重復下載,然后加上-nc,這樣就會跳過已經下載的文件,哈哈,下吧,我就可以邊下載邊學習正則了!

 

附上wget的用法 (來自百度百科)

 

命令格式

  wget [options] [URL]

編輯本段啟動類參數

  這一類參數主要提供軟件的一些基本信息。
  -V,--version 顯示軟件版本號然后退出;
  -h,--help顯示軟件幫助信息;
  -e,--execute=COMMAND 執行一個 “.wgetrc”命令
  以上每一個功能有長短兩個參數,長短功能一樣,都可以使用。需要注意的是,這里的-e參數是執行一個.wgettrc的命令,.wgettrc命令其實是一個參數列表,直接將軟件需要的參數寫在一起就可以了。

編輯本段文件處理參數

  這類參數定義軟件log文件的輸出方式等。
  -o,--output-file=FILE 將軟件輸出信息保存到文件;
  -a,--append-output=FILE將軟件輸出信息追加到文件;
  -d,--debug顯示輸出信息;
  -q,--quiet 不顯示輸出信息;
  -i,--input-file=FILE 從文件中取得URL;
  例1:下載首頁並且顯示下載信息
  wget -d
  例2:下載首頁並且不顯示任何信息
  wget -q
  例3:下載filelist.txt中所包含的鏈接的所有文件
  wget -i filelist.txt
  wget -np -m -l 5 不下載本站所鏈接的其它站點內容,5級目錄結構

編輯本段下載參數

  下載參數定義下載重復次數、保存文件名等。
  -t,--tries=NUMBER 是否下載次數(0表示無窮次)
  -O --output-document=FILE下載文件保存為別的文件名
  -nc, --no-clobber 不要覆蓋已經存在的文件
  -N,--timestamping只下載比本地新的文件
  -T,--timeout=SECONDS 設置超時時間
  -Y,--proxy=on/off 關閉代理
  例:下載的首頁並將下載過程中的的輸入信息保存到test.htm文件中
  wget -o test.

目錄參數

  目錄參數主要設置下載文件保存目錄與原來文件(服務器文件)的目錄對應關系;
  -nd --no-directories 不建立目錄
  -x,--force-directories 強制建立目錄
  可能現在我們對這里的目錄還不是很了解,我們來看一個舉例
  例:下載的首頁,並且保持網站結構
  wget -x

HTTP參數

  HTTP參數設置一些與HTTP下載有關的屬性。
  --http-user=USER設置HTTP用戶
  --http-passwd=PASS設置HTTP密碼
  --proxy-user=USER設置代理用戶
  --proxy-passwd=PASS設置代理密碼
  以上參數主要設置HTTP和代理的用戶、密碼;

遞歸參數設置

  在下載一個網站或者網站的一個目錄的時候,我們需要知道的下載的層次,這些參數就可以設置。
  -r,--recursive 下載整個網站、目錄(小心使用)
  -l,--level=NUMBER 下載層次
  例:下載整個網站
  wget -r

遞歸允許與拒絕選項參數

  下載一個網站的時候,為了盡量快,有些文件可以選擇下載,比如圖片和聲音,在這里可以設置。
  -A,--accept=LIST 可以接受的文件類型
  -R,--reject=LIST拒絕接受的文件類型
  -D,--domains=LIST可以接受的域名,用逗號分隔
  --exclude-domains=LIST拒絕的域名,用逗號分隔
  -L,--relative 下載關聯鏈接
  --follow-ftp 只下載FTP鏈接
  -H,--span-hosts 可以下載外面的主機
  -I,--include-directories=LIST允許的目錄
  -X,--exclude-directories=LIST 拒絕的目錄

編輯本段設定wget所使用的代理服務器

  wget可以使用用戶設置文件".wgetrc"來讀取很多設置,我們這里主要利用這個文件來是設置代理服務器。使用者用什么用戶登錄,那么什么用戶主目錄下的".wgetrc"文件就起作用。例如,"root"用戶如果想使用".wgetrc"來設置代理服務器,"/root/.wgetrc"就起作用,下面給出一個".wgetrc"文件的內容,讀者可以參照這個例子來編寫自己的"wgetrc"文件:
  http-proxy = 111.111.111.111:8080
  ftp-proxy = 111.111.111.111:8080
  這兩行的含義是,代理服務器IP地址為:111.111.111.111,端口號為:8080。第一行指定HTTP協議所使用的代理服務器,第二行指定FTP協議所使用的代理服務器。

編輯本段代碼總表

  ‍
  ●啟動:
  -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 不要追溯到父目錄


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM