当前位置:首页>Linux>Linux命令每日一清单038:wget--文件下载命令速查表

Linux命令每日一清单038:wget--文件下载命令速查表

  • 2026-09-17 11:29:33
Linux命令每日一清单038:wget--文件下载命令速查表

wget是Linux/Unix系统中最流行的命令行下载工具,支持通过HTTP、HTTPS、FTP协议下载文件。与图形界面下载工具相比,wget能够在后台运行、支持断点续传、递归下载整个网站、限速下载等高级功能,非常适合在终端环境或脚本中使用。

wget的设计理念是简单、强大、可脚本化,它能够在网络不稳定的情况下自动重试,支持代理服务器、用户认证、Cookie等特性。掌握wget是进行自动化下载、网站镜像、数据抓取的必备技能。

1. 基本下载

命令说明
wget URL
下载文件到当前目录
wget -q URL
静默模式(无输出)
wget -nv URL
较少输出(仅错误和基本信息)
wget -v URL
详细输出(默认)
wget -d URL
调试输出(用于排查问题)

2. 保存选项

命令说明
wget -O name.txt URL
保存为指定文件名
wget -O - URL
输出到标准输出(stdout)
wget -P /path/ URL
保存到指定目录
wget --content-disposition URL
使用服务器建议的文件名
wget --no-clobber URL
文件已存在时跳过
wget -nc URL--no-clobber
的短格式
wget --backups=1 URL
重命名旧文件为.1后缀

3. 断点续传与限速

命令说明
wget -c URL
断点续传(继续未完成的下载)
wget --limit-rate=2m URL
限制下载速度为2MB/s
wget --limit-rate=500k URL
限制下载速度为500KB/s
wget -b URL
后台下载
wget -b -o log.txt URL
后台下载并写入日志
wget --wait=2 URL
两次请求间隔2秒

4. 多文件下载

命令说明
wget URL1 URL2 URL3
下载多个URL
wget -i urls.txt
从文件读取URL列表下载
wget -i - < urls.txt
从标准输入读取URL
wget --force-html -i list.html
从HTML文件提取链接下载

5. 递归下载

命令说明
wget -r URL
递归下载(遍历链接)
wget -r -l 2 URL
限制递归深度为2层
wget -r --no-parent URL
不上升到父目录
wget -r --accept=jpg,png URL
仅接受指定文件类型
wget -r --reject=mp4,avi URL
拒绝指定文件类型
wget -r -A "*.pdf" URL
仅下载PDF文件(短格式)
wget -r --follow-tags=a URL
仅跟随<a>标签

6. 网站镜像

命令说明
wget -m URL
镜像整个网站(递归+时间戳+无限深度)
wget -m -k -p URL
镜像并转换链接为本地可浏览
wget -m -k -p -E URL
镜像并添加.html扩展名
wget -m --wait=2 URL
镜像时请求间隔2秒
wget -m --random-wait URL
随机间隔(0.5x~1.5x倍)
wget -m -e robots=off URL
忽略robots.txt

-m 等效选项:-r -N -l inf --no-remove-listing

7. 认证与授权

命令说明
wget --user=USER --password=PASS URL
HTTP基本认证
wget --ask-password URL
交互式输入密码
wget --header="Authorization: Bearer TOKEN" URL
Bearer Token认证
wget --ftp-user=USER --ftp-password=PASS URL
FTP认证
wget --user=USER --password=PASS --auth-no-challenge URL
强制发送认证(某些服务器需要)

8. 请求头与User-Agent

命令说明
wget --header="Key: Value" URL
添加自定义请求头
wget --header="Accept: application/json" URL
请求JSON格式
wget -U "CustomAgent/1.0" URL
修改User-Agent
wget --referer=URL URL
设置Referer请求头
wget --header="Cookie: name=value" URL
发送Cookie

9. SSL/TLS选项

命令说明
wget --no-check-certificate URL
跳过证书验证(不推荐生产环境)
wget --ca-certificate=ca.crt URL
使用自定义CA证书
wget --certificate=client.crt URL
客户端证书
wget --private-key=client.key URL
客户端私钥
wget --https-only URL
仅跟随HTTPS链接
wget --secure-protocol=TLSv1_2 URL
指定TLS协议版本

10. FTP选项

命令说明
wget ftp://server/file
下载FTP文件
wget -r ftp://server/dir/
递归下载FTP目录
wget --ftp-user=USER --ftp-password=PASS ftp://server/
FTP认证下载
wget --no-passive-ftp ftp://server/file
使用主动FTP模式
wget --no-remove-listing ftp://server/dir/
保留.listing文件

11. 重试与超时

命令说明
wget --tries=5 URL
重试5次(默认20次)
wget --retry-connrefused URL
连接拒绝时重试
wget --waitretry=10 URL
重试间隔等待10秒
wget --timeout=30 URL
设置所有超时30秒
wget --connect-timeout=10 URL
连接超时10秒
wget --read-timeout=30 URL
读取超时30秒
wget --dns-timeout=5 URL
DNS解析超时5秒

12. 输出与日志

命令说明
wget -q URL
禁止所有输出
wget -nv URL
仅显示错误和基本信息
wget -o log.txt URL
输出日志到文件(覆盖)
wget -a log.txt URL
追加日志到文件
wget --show-progress -q URL
静默但显示进度条
wget --progress=dot URL
点状进度指示器
wget --progress=bar URL
条状进度指示器(默认)

13. 时间戳与缓存

命令说明
wget -N URL
仅下载更新的文件(时间戳比较)
wget --no-cache URL
禁用服务器端缓存
wget --spider URL
检查URL是否存在(不下载)
wget --spider -r URL
递归检查所有链接
wget --no-use-server-timestamps URL
不使用服务器时间戳

14. 实用组合模式

命令说明
wget -q -O - URL | tar -xzf - -C /path
下载并直接解压
wget -c --limit-rate=1m -P /tmp URL
断点续传+限速+指定目录
wget -r -np -nH --cut-dirs=2 URL
递归下载,去除主机和路径前缀
wget -m -k -p --wait=1 -e robots=off URL
完整镜像,忽略robots.txt
wget --mirror --convert-links --page-requisites --wait=1 URL
网站镜像标准组合
wget -i urls.txt -P downloads/ -nc
批量下载,跳过已存在文件
wget --user=USER --ask-password URL 2>&1 | tee download.log
交互式密码+双重重定向日志

15. 常用选项速查

选项说明
-O
指定输出文件名
-P
指定输出目录
-c
断点续传
-q
静默模式
-v
详细模式
-nv
较少输出
-d
调试模式
-i
从文件读取URL
-r
递归下载
-l
递归深度
-m
镜像模式
-N
时间戳比较
-k
转换链接为本地
-p
下载页面所需资源
-np
不上升到父目录
-nH
不创建主机目录
-A
 / --accept
接受的文件类型
-R
 / --reject
拒绝的文件类型
--limit-rate
限速
--tries
重试次数
--timeout
超时设置
--user
 / --password
认证凭据
--no-check-certificate
跳过证书验证
--spider
蜘蛛模式(不下载)

16. 故障排查

问题解决方法
证书验证错误
使用--no-check-certificate(临时);更新CA证书
连接被拒绝
检查防火墙;确认服务可用;使用--retry-connrefused
下载速度慢
使用--limit-rate限制速度(可能改善稳定性);检查网络
递归下载过多文件
使用-l限制深度;使用--accept/--reject过滤类型
网站镜像链接失效
使用-k转换链接;使用-p下载资源
下载不完整
使用-c断点续传;增加--tries次数
认证失败
确认用户名密码;检查认证方式(Basic/Digest/Bearer)
被服务器阻止
使用-U修改User-Agent;增加--wait间隔

温馨提示: wget是强大的下载工具,建议掌握以下技巧:1)大文件下载使用-c支持断点续传;2)脚本中使用-q静默模式,配合-o记录日志;3)批量下载使用-i从文件读取URL;4)镜像网站时务必使用--wait避免服务器过载;5)下载后验证文件完整性(对比Content-Length或MD5);6)处理敏感数据时避免在命令行暴露密码,使用--ask-password;7)对于需要cookie认证的网站,可先用浏览器获取cookie文件:--load-cookies cookies.txt。对于更复杂的需求(如递归限制、HTTPS证书处理),curl可能是更好的选择。

本文PDF格式下载:

  关注公众号(haopython),请回复: LLTWGET

最新文章

随机文章