wget命令英文词组”web get“的缩写,用于指定网址下载网络文件

wget命令支持如HTTP、HTTPS、FTP等常见协议可以命令行中直接下载网络文件

curl命令不同,wget仅能用于下载文件

wget命令语法格式如下:

wget [选项] 网址

常用选项如下:

选项 作用或含义
-V 显示版本信息
h 显示帮助信息 
b 启动后转入后台执行 
c 支持断点续传 
-O 定义本地文件名 
t N N为整数设置重试次数N
-q 安静模式
i FILENAME 下载网址文件FILENAME中读取
-r 递归下载
-l L的小写,指定最大递归深度,0或inf表示无限制
 —limit-rate=RATE  限制下载速度最大为RATE
ftpuser=USERNAME 指定登录FTP服务器账号名称
ftppassword=PASSWORD 指定登录FTP服务器账号密码
miror 镜像站点
np 不追溯至父目录递归下载时常用
-N 获取本地文件新的文件
-P DIRNAME 保存文件指定目录DIRNAME下
nocheckcertificate 不要验证服务器证书,从HTTPS服务器下载时建议加上该选项

实例演示:

1、下载指定文件

# 不带选项,下载并按原文件名保存当前目录
[root@myEuler ~]# wget http://192.168.18.18/k8s/docker-20.10.23.tgz
--2023-03-11 08:36:48--  http://192.168.18.18/k8s/docker-20.10.23.tgz
正在连接 192.168.18.18:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:65976837 (63M) [application/octet-stream]
正在保存至: “docker-20.10.23.tgz”

……此处省略部分输出……

2、下载并重命名文件

# 使用选项-O,将下载的文件重命名指定文件名
[root@myEuler ~]# wget -O docker http://192.168.18.18/k8s/docker-20.10.23.tgz
--2023-03-11 08:38:37--  http://192.168.18.18/k8s/docker-20.10.23.tgz
正在连接 192.168.18.18:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:65976837 (63M) [application/octet-stream]
正在保存至: “docker”
……此处省略部分输出……

3、限速下载

# 使用选项--limit=RATE,限制最高下载速率
[root@myEuler ~]# wget --limit=218k -O docker2 http://192.168.18.18/k8s/docker-20.10.23.tgz
--2023-03-11 08:41:16--  http://192.168.18.18/k8s/docker-20.10.23.tgz
正在连接 192.168.18.18:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:65976837 (63M) [application/octet-stream]
正在保存至: “docker2”

docker2              5%[==>                        ]   3.56M   218KB/s  剩余 4m 39s  

4、将下载任务放至后台

[root@myEuler ~]# wget -b http://192.168.18.18/k8s/docker-20.10.23.tgz
继续在后台运行pid 为 34327。
将把输出写入至 “wget-log”。

5、断点续传

断点续传非常适合下载大文件,若下载中途因网络原因导致下载中断,这时就可以使用选项-c进行断点续传,避免从头下载。

[root@myEuler ~]# wget -c http://192.168.18.18/images/openEuler-22.03-LTS-SP1-everything-x86_64-dvd.iso

6、从FTP服务器下载文件

如果FTP服务器是匿名的,则下载与HTTP相同,如果要求提供用户账号,则必须使用ftpuser和–ftppassword两个选项。

[root@myEuler ~]# wget --ftp-user=zhangsan --ftp-password=Mima1234! ftp://192.168.218.115/docker
--2023-03-11 09:16:49--  ftp://192.168.218.115/docker
           => “docker”
正在连接 192.168.218.115:21... 已连接。
正在以 zhangsan 登录 ... 登录成功!
……此处省略后续输出……

7、递归下载

若想将站点中某个目录下的所有子目录及其文件都下载下来,则可以使用-r选项,同时用选项-l指定递归深度

# 安静递归下载,递归深度为6,不追溯父目录,下载的文件保存至data目录
[root@myEuler ~]#  wget -qrl 6 -np -P data/ http://192.168.18.18/images/harbor

8、镜像站点

当想将某个站点镜像下来时,就可以使用选项–mirror,该选项其实就是递归下载,只是递归深度不限,它本质是-N -r -l infno-remove-listing 的缩写形式。

[root@myEuler ~]# wget --mirror -P /data/ http://192.168.18.18/images/

但若站点是一个包含了大量Web网页的站点时,建议还要使用以下选项:

convertlinks:下载网页后,将链接转换本地链接
-L:递归时不进入其它主机,因为可能该网站可能存在友情链接

9、从文件中读取下载的URL

# 在文件中指定要下载的URL,每行一个
[root@myEuler ~]# cat download
http://nginx.org/download/nginx-1.22.1.tar.gz
https://webcdn.m.qq.com/spcmgr/download/QQ9.7.3.28946.exe
https://webcdn.m.qq.com/spcmgr/download/WeChatSetup_3.9.0.28.exe

# 由于有HTTPS,故建议加上--no-check-certificate选项,否则可能提示没有认证不允许下载
[root@myEuler ~]# wget -i download --no-check-certificate

原文地址:https://blog.csdn.net/u013007181/article/details/129458534

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_12329.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注