Wget 是Linux下功能强大的命令行下载工具,支持递归下载、断点续传及HTTP认证等特性。掌握其高级用法可显著提升下载效率,尤其适合批量处理文件或访问受保护资源。以下是关键技巧详解:
1. 批量下载文件****
·
通配符匹配:通过 -A 指定文件类型,结合 -r(递归)和 -np(不追溯父目录)下载特定文件:
·
·
bash
·
·
| wget -r -np -A ".pdf,.zip" example.com/files/ |
|---|
·
此命令会下载 example.com/files/ 目录下所有PDF和ZIP文件,但不进入上级目录。
·
·
从文件列表批量下载:将URL列表保存至 urls.txt,使用 -i 参数读取:
·
·
bash
·
·
| wget -i urls.txt |
|---|
·
2. HTTP认证下载****
访问需用户名密码的受保护资源时,可通过以下方式传递认证信息:
·
直接嵌入命令:使用 --user 和 --password 参数(注意安全性,避免在脚本中直接暴露密码):
·
·
bash
·
·
| wget --user=myuser --password=mypass secure.example.com/data.zip |
|---|
·
·
交互式输入密码:省略 --password,执行时会提示输入密码,更安全:
·
·
bash
·
·
| wget --user=myuser secure.example.com/data.zip |
|---|
·
·
使用 .netrc 文件:在 ~/.netrc 中配置认证信息(需设置权限 chmod 600 ~/.netrc):
·
·
| machine secure.example.com | |
|---|---|
| login myuser | |
| password mypass |
·
之后直接运行 wget secure.example.com/data.zip 即可…
·
3. 结合断点续传与限速****
·
断点续传:通过 -c 参数恢复中断的下载:
·
·
bash
·
·
| wget -c example.com/largefile.i… |
|---|
·
·
限速下载:使用 --limit-rate=200k 限制带宽为200KB/s,避免占用网络:
·
·
bash
·
·
| wget --limit-rate=200k example.com/largefile.i… |
|---|
·
通过灵活组合这些参数,Wget 可高效完成复杂下载任务。例如,批量下载受保护资源并限速:
bash
| wget -r -np -A ".jpg" --user=myuser --limit-rate=1M secure.example.com/images/ |
|---|
掌握这些技巧后,Wget 将成为你管理网络资源的瑞士军刀!