导读
本文将介绍wget
的基本使用方法,和一些高级用法,比如递归下载等。对于经常在FTP
网页下载数据的读者来说,可以说是必备的技能之一。
1. 介绍
Wget 是由 GNU
项目创建的计算机工具。您可以使用它从各种 Web
服务器检索内容和文件。这个名字是万维网和get
这个词的组合。它支持通过FTP、SFTP、HTTP 和 HTTPS
下载。
Wget
是用可移植的 C 语言创建的,可在任何Unix
系统上使用。也可以在Mac OS X、Microsoft Windows、AmigaOS
和其他流行平台上实现。
2. 安装
- Ubuntu 18.04
sudo apt-get install wget
- CentOS 7
sudo yum install wget
3. 命令
3.1. 单个文件
代码语言:shell复制# 下载单个文件到当前文件夹
wget https://example.zip # wget url
3.2. 多个文件
需要将多个件的url
写到一个txt
文件中,再利用wget
下载
# example.txt
https://example1.zip
https://example2.zip
https://example3.zip
- 下载上面
example.txt
文件中的文件
wget -i example.txt
3.3. 命名
- 给下载文件重命名
wget -O example.zip https://ttt.zip
# 利用-o 选项,重命名文件为`example.zip`
3.4. 指定目录
- 将下载文件保存到指定目录
wget -P documents/archives/ https://example.zip
# 利用-p 选项,将文件保存到`documents/archives/`目录下
3.5. 限制下载速度
代码语言:shell复制wget --limit-rate=500k https://example.zip
# 将下载速度最高限制为 500k
3.6. 重试尝试次数
代码语言:shell复制wget -tries=100 https://example.zip
# 设置重新连接次数为100
3.7. 后台下载
当下载的文件非常大的时候,可以将下载任务放置到后台
代码语言:shell复制wget -b https://example.zip
3.8. FTP下载
代码语言:shell复制wget --ftp-user=YOUR_USERNAME --ftp-password=YOUR_PASSWORD ftp://example.com/something.tar
--ftp-user
:FTP用户名--ftp-password
:密码
3.9. 断点续连
当再下载途中,链接中断时,可以使用-c
选项,进行重新连接,继续上次下载。
wget -c https://example.zip
3.10. 检索全站
- 下载整个网站的内容
wget --mirror --convert-links --page-requisites --no-parent -P documents/websites/ https://example.com
参数 | 作用 |
---|---|
–mirror | 递归下载 |
–convert-links | 所有链接都将转换为正确的脱机使用 |
–page-requisites | 下载将包括CSS、JS和图像 |
–no-parent | 不检索父目录 |
-P | 指定保存目录 |
3.11. 查找断开链接
- 查找网页中无法下载的连接,并输出到文件中
wget -o wget-log -r -l 5 --spider http://example.com
参数 | 作用 |
---|---|
-o | 将输出收集到文件中供以后使用 |
-l | 指定递归级别 |
-r | 递归下载 |
–spider | 将wget设置为spider模式 |
- 利用下面命令,过滤出无法下载的文件
grep -B 2 '404' wget-log | grep "http" | cut -d " " -f 4 | sort -u
# wget-log是第一步的输出结果
3.12. 下载编号文件
如果文件名是按照数字编号时,可以同时下载。
代码语言:shell复制wget http://example.com/images/{1..50}.jpg