wget
是一个可以从网络上下载文件的免费实用程序,它的工作原理是从 Internet 上获取数据,并将其保存到本地文件中或显示在你的终端上。wget
程序进行数据下载。wget
命令常见使用方式,希望对小伙伴们有所帮助。1. 使用 wget 命令下载文件
wget
命令来下载指定链接的文件。默认情况下,下载的文件将保存到当前工作目录中的同名文件中。–2021-09-20 17:23:47– http://www.lxlinux.net/
Resolving www.lxlinux.net… 93.184.216.34, 2606:2800:220:1:248:1893:25c8:1946
Connecting to www.lxlinux.net|93.184.216.34|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 1256 (1.2K) [text/html]
Saving to: ‘index.html’
--output-document
选项,同时后面再跟上一个 -
号。html>
--output-document
选项(或者更简便,直接使用 -O
即可):2. 断点续传
--continue
选项(或者 -c
)实现断点续传。也就是说,如果因为各种原因导致下载中断,使用了这个选项,就可以继续上次的下载,而不需要重新进行下载。3. 下载一系列文件
wget
命令也可以帮你轻松实现。4. 镜像整个站点
--mirror
选项。--recursive --level inf --timestamping --no-remove-listing
,这意味着它是无限递归的,因此你可以下载到指定域上的所有内容。wget
存档站点,那么这些选项 --no-cookies --page-requisites --convert-links
也可用于确保每个页面都是最新的、最完整的。5. 修改 HTML 请求标头
--debug
选项查看 wget
每次请求发送的标头信息:—request begin—
GET / HTTP/1.1
User-Agent: Wget/1.19.5 (linux-gnu)
Accept: */*
Accept-Encoding: identity
Host: www.lxlinux.net
Connection: Keep-Alive
—request end—
--header
选项修改请求标头。为什么要这么做呢?其实有很多使用场景的。例如,有时候为了测试,需要模拟特定的浏览器发出的请求。–header = “User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari /604.1” \
HTTP:// www.lxlinux.net
6. 查看响应标头
--debug
选项查看响应标头:[…]
—response begin—
HTTP/1.1 200 OK
Accept-Ranges: bytes
Age: 188102
Cache-Control: max-age=604800
Content-Type: text/html; charset=UTF-8
Etag: “3147526947”
Server: ECS (sab/574F)
Vary: Accept-Encoding
X-Cache: HIT
Content-Length: 1256
—response end—
200 OK
Registered socket 3 for persistent reuse.
URI content encoding = ‘UTF-8’
Length: 1256 (1.2K) [text/html]
Saving to: ‘index.html’
7. 响应 301 响应
wget
的重定向功能。所以,如果你遇到 301 响应时,就需要使用 --max-redirect
选项。--max-redirect
设置为 0 。–2021-09-21 11:01:35– http://www.lxlinux.net/
Resolving www.lxlinux.net… 192.0.43.8, 2001:500:88:200::8
Connecting to www.lxlinux.net|192.0.43.8|:80… connected.
HTTP request sent, awaiting response… 301 Moved Permanently
Location: https://www.www.lxlinux.net/ [following]
0 redirections exceeded.
wget
跟随的重定向数量。8. 展开短链接
wget
命令来将短链接还原为长链接。这里依然使用 --max-redirect
选项:–2021-09-21 11:32:04– https://bit.ly/2yDyS4T
Resolving bit.ly… 67.199.248.10, 67.199.248.11
Connecting to bit.ly|67.199.248.10|:443… connected.
HTTP request sent, awaiting response… 301 Moved Permanently
Location: http://www.lxlinux.net/ [following]
0 redirections exceeded.