wget 命令用法


wget 命令用法



1. 用法/命令格式

wget  [OPTION]...  [URL]...
wget  [參數列表]    [目標軟件、網頁的網址]

長選項所必須的參數在使用短選項時也是必須的


2. 常用參數

  • 啟動:
-V,  --version                   # 顯示 Wget 的版本信息並退出
-h,  --help                      # 打印幫助
-b,  --background                # 啟動后轉入后台
  • 記錄和輸入文件:
-o,  --output-file=FILE          # 將日志信息寫入【FILE】
-a,  --append-output=FILE        # 將信息添加至【FILE】
-q,  --quiet                     # 安靜模式 (無信息輸出)
-v,  --verbose                   # 詳細輸出 (默認)
-nv, --no-verbose                # 關閉詳細輸出,但不進入安靜模式
-i,  --input-file=FILE           # 下載本地或外部 [FILE] 中的 URL
  • 下載:
-t,  --tries=NUMBER              # 設置重試次數為【NUMBER】(0 代表無限制)
     --retry-connrefused         # 即使拒絕連接也重試
-O,  --output-document=FILE      # 將文檔寫入【FILE】(可以理解為把下載的文件重命名改為【FILE】)
-nc, --no-clobber                # 不要下載已存在文件
-c,  --continue                  # 斷點續傳下載文件(繼續獲取部分下載)
-N,  --timestamping              # 只獲取比本地文件新的文件
-S,  --server-response           # 打印服務器響應頭信息
     --spider                    # 不下載任何文件
     --limit-rate=RATE           # 限制下載速率為 [RATE]
     --ignore-case               # 匹配文件/目錄時忽略大小寫
     --user=USER                 # 將 ftp 和 http 的用戶名均設置為【USER】
     --password=PASS             # 將 ftp 和 http 的密碼均設置為【PASS】
     --ask-password              # 提示輸入密碼
  • 目錄:
-nd, --no-directories            # 不創建目錄
-x,  --force-directories         # 強制創建目錄
-nH, --no-host-directories       # 不要創建主機(www.cnglogs.com)目錄
     --protocol-directories      # 在目錄中使用協議名稱(從https開始創建目錄)
-P,  --directory-prefix=PREFIX   # 保存文件到指定的【PREFIX】目錄
     --cut-dirs=NUMBER           # 忽略遠程目錄中【NUMBER】個目錄層。
  • HTTP選項:
--http-user=USER            # 設置 http 用戶名為【USER】
--http-password=PASS        # 設置 http 密碼為【PASS】
--no-cache                  # 不使用服務器緩存的數據。
--default-page=NAME         # 改變默認頁名稱 (通常是“index.html”)
--no-cookies                # 不使用 cookies
--save-cookies=FILE         # 會話結束后保存 cookies 至【FILE】
  • HSTS選項:
--no-hsts                   # 禁用 HSTS
--hsts-file                 # HSTS 數據庫路徑(將覆蓋默認值)
  • FTP選項:
--ftp-user=USER             # 設置 ftp 用戶名為【USER】
--ftp-password=PASS         # 設置 ftp 密碼為【PASS】
--no-glob                   # 不在 FTP 文件名中使用通配符展開
--preserve-permissions      # 保留遠程文件的權限
--retr-symlinks             # 遞歸目錄時,獲取鏈接的文件 (而非目錄)
  • 遞歸下載:
-r,  --recursive            # 指定遞歸下載
-l,  --level=NUMBER         # 最大遞歸深度 (inf 或 0 代表無限制,即全部下載)。
     --delete-after         # 下載完成后刪除本地文件
     --backups=N            # 寫入文件 X 前,輪換移動最多 N 個備份文件
-K,  --backup-converted     # 在轉換文件 X 前先將它備份為 X.orig
  • 遞歸接受/拒絕:
-A,  --accept=LIST          # 逗號分隔的可接受的擴展名列表
-R,  --reject=LIST          # 逗號分隔的要拒絕的擴展名列表
     --accept-regex=REGEX        # 匹配接受的 URL 的正則表達式
     --reject-regex=REGEX        # 匹配拒絕的 URL 的正則表達式
     --regex-type=TYPE           # 正則類型 (posix|pcre)
-D,  --domains=LIST              # 逗號分隔的可接受的域名列表
     --exclude-domains=LIST      # 逗號分隔的要拒絕的域名列表
-I,  --include-directories=LIST  # 允許目錄的列表
-X,  --exclude-directories=LIST  # 排除目錄的列表
-np, --no-parent                 # 不追溯至父目錄

3. 常用實例

  • 下載單個文件/網頁
wget https://www.rarlab.com/rar/rarlinux-6.0.1.tar.gz	# 下載rarlinux-6.0.1.tar.gz文件
wget https://www.rarlab.com/download.htm		# 下載 download.htm 網頁	
  • 將下載的文件名改為指定文件名 (參數 “O” )
wget -O edit.html https://i.cnblogs.com/posts/editpostId=14660645
# 默認下載保存的文件為“editpostId=14660645”
# 使用 -O 參數后,保存的文件為指定文件名,這里是“edit.html”
  • 斷點下載(參數 “c” )
# 這個參數適合下載大文件,網速不理想的場景
# 借助參數 "c", 可以繼續從文件中斷的地方繼續下載

wget -c https://www.rarlab.com/rar/rarlinux-6.0.1.tar.gz
  • 后台下載(參數 “b”)
# 對於下載大文件時,我們可以使用參數 “b”,將進程切換到后台下載
# 切換后台下載后,我們可以通過 “wget-log”查看下載進度
# -t 參數表示重試次數,例如需要重試100次,那么就寫-t 100,如果設成-t 0,那么表示無窮次重試,直到連接成功
wget -b https://www.rarlab.com/rar/rarlinux-6.0.1.tar.gz
  • 批量下載(參數 “i”)
# 自定義一個文件URLlist.txt,將需要下載的URL都輸入進去,然后使用參數 “i”指定改文件即可
wget -i URLlist.txt
  • 檢查網頁是否可訪問,而不用下載(“S“:打印響應信息,“spaider”:不下載)
wget [-S] --spaider https://www.cnblogs.com/cure/p/14660645.html
  • 指定文件格式下載(“A” 指定下載文件格式,“R”指定忽略下載文件格式)
wget -A png https://www.cnblogs.com/ 	或 wget --accept=LIST https://www.cnblogs.com/
wget -R gif https://www.cnblogs.com/ 	或 wget --reject=LIST https://www.cnblogs.com/
# LIST表示可以指定多個格式
  • 指定用戶名密碼下載
# 此場景適合部分訪問需要用戶名和密碼驗證的 URL下載
wget --user=USER --password=PASS https://www.cnblogs.com/cure/p/14660645.html	 # 此方式密碼明文顯示
wget --user=USER --ask-password https://www.cnblogs.com/cure/p/14660645.html	 # 此方式密碼是按回車后,提示輸入密碼,密碼不顯示(推薦)

  • 下載URL中的當前位置的所有文件
# 場景: 我需要下載文件服務器某一路徑下的全部文件,但是不需要保存主頁“index.html”

wget -r -np -nd -R html,tmp  https://www.cnblogs.com/cure/p/
或者:
wget -r -np -nd -A txt,zip,png[...]  https://www.cnblogs.com/cure/p/

# 參數介紹:
# -r   遞歸下載(最好跟上np參數,不然會下載整個網站的數據及關聯網站數據)
# -np  不追溯到父級(表示只訪問當前位置)
# -nd  不創建文件夾
# -R   忽略/拒絕下載的格式(wget下載會默認下載主頁“index.html”,拒絕下載html格式時,會保存為html.tmp文件)
# -A   指定下載的格式(只下載指定格式的文件,這樣也不會下載主頁“index.html”)



參考:

https://www.jianshu.com/p/59bb131bc2ab


免責聲明!

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



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