Linux 中 wget 使用实践
概述
wget 是 Linux 系统中最常用的命令行下载工具,支持 HTTP、HTTPS 和 FTP 协议,具有断点续传、后台下载、递归下载、限速下载等强大功能,是服务器运维和日常文件下载的必备利器。
安装 wget
Ubuntu / Debian 系统:
sudo apt-get update
sudo apt-get install wget
CentOS / RockyLinux 系统:
sudo yum install wget
# 或
sudo dnf install wget
验证是否安装成功:
wget --version
基本用法
1. 下载单个文件
wget https://example.com/file.zip
文件默认保存到当前目录,并显示下载进度、速度和耗时。
2. 指定保存文件名
wget -O newname.zip https://example.com/file.zip
3. 指定保存目录
wget -P /path/to/directory https://example.com/file.zip
常用参数详解
实战示例
1. 断点续传下载
下载中断后,再次执行加上 -c 参数即可从中断处继续:
wget -c https://example.com/large-file.iso
2. 后台下载
wget -b https://example.com/file.zip
# 查看后台下载日志
tail -f wget-log
3. 限速下载
避免占用过多带宽,将下载速度限制为 200KB/s:
wget --limit-rate=200k https://example.com/file.zip
4. 批量下载多个文件
将多个 URL 写入文件 urls.txt:
# urls.txt 内容示例
# https://example.com/a.zip
# https://example.com/b.zip
# https://example.com/c.zip
wget -i urls.txt
5. 递归下载整个目录
wget -r -np -nH https://example.com/downloads/
参数说明:-np 不递归到父目录,-nH 不创建主机名目录。
6. 镜像整个网站
wget -m -p -E -k -K -np https://example.com/
参数说明:-p 下载页面所需全部资源,-E 保存为 .html 后缀,-k 转换链接为本地链接,-K 保留原始文件备份。
7. 跳过 SSL 证书校验
访问自签名证书的 HTTPS 站点时使用:
wget --no-check-certificate https://self-signed.example.com/file.zip
8. 模拟浏览器下载
部分网站会拦截非浏览器请求,可通过指定 User-Agent 解决:
wget -U "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0 Safari/537.36" https://example.com/file.zip
常见问题排查
问题 1:证书校验失败
wget --no-check-certificate https://example.com/file.zip
问题 2:下载被拒绝或 403
使用 -U 指定浏览器 User-Agent,必要时配合 Cookie:
wget --header="Cookie: session=xxxx" -U "Mozilla/5.0" https://example.com/file.zip
问题 3:下载中断需继续
wget -c https://example.com/large-file.iso
总结
wget 是 Linux 下功能强大的命令行下载工具,熟练掌握 -O、-P、-c、-b、--limit-rate、-i、-r、-m 等核心参数,可以高效完成单文件下载、批量下载、断点续传和整站镜像等任务,是 Linux 运维人员必须掌握的技能之一。
评论区