前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >每天学一个 Linux 命令(61):wget

每天学一个 Linux 命令(61):wget

作者头像
民工哥
发布2021-03-15 16:53:03
5770
发布2021-03-15 16:53:03
举报
文章被收录于专栏:民工哥技术之路

命令简介

wget 命令是 Linux 系统一个免费实用的文件下载工具,支持 HTTP、HTTPS,或者 FTP。

wget 下载它是非交互式的,可以在后台运行,这就表明你可以事先登录到系统,启动一个下载的动作,然后退出系统让wget自动在后台将这个动作执行完成(下载完成)。wget 非常稳定,它在带宽不足或网络不稳定的情况下,如果产生下载失败,那么 wget 会不断的尝试下载动作,直至整个下载过程完成。

语法格式

代码语言:javascript
复制
wget [option]... [URL]...

选项说明

wget 命令的选项参数特别的多,本文不会全部介绍,只介绍常用的,感兴趣的读者可以自己在系统中查看帮助信息。

启动选项

代码语言:javascript
复制
-V, –-version  #打印wget的版本后退出
-h, –-help     #打印帮助
-b, –-background  #启动后转入后台执行

记录和输入文件选项

代码语言:javascript
复制
-o, –-output-file=FILE    #将记录信息写入指定的FILE文件中
-a, –-append-output=FILE  #将记录信息追加到指定的FILE文件中
-d, –-debug    #打印调试信息并输出
-i, –-input-file=FILE  #下载指定FILE文件中出现的URLs
-F, –-force-html  #将输入文件当作HTML格式文件来处理

下载选项

代码语言:javascript
复制
-t, –-tries=NUMBER         #配置最大尝试链接次数(0 表示无限制).
-O –-output-document=FILE  #把文档写到FILE文件中
-c, –-continue      #接着下载末下载完成的文件
-T, –-timeout=SECONDS   #配置响应超时的秒数
-w, –-wait=SECONDS   #指定两次尝试之间间隔SECONDS秒
–waitretry=SECONDS   #指定在重新链接之间等待1…SECONDS秒
–limit-rate=RATE    #配置限制下载输率

目录选项

代码语言:javascript
复制
-nd –-no-directories     #不创建目录
-x, –-force-directories  #强制创建目录
-nH, –-no-host-directories  #不创建主机目录
-P, –-directory-prefix=PREFIX  #将文件保存到目录 PREFIX/…

HTTP 选项

代码语言:javascript
复制
-–http-user=USER     #指定HTTP用户名为 USER.
-–http-passwd=PASS   #指定http密码为 PASS
-–proxy-user=USER    #指定代理的用户名为 USER
-–proxy-passwd=PASS  #指定代理的密码为 PASS
-C, –-cache=on/off   #允许/不允许服务器端的数据缓存
-s, –-save-headers   #保存HTTP头到文件
–-cookies=off        #不使用 cookies

HTTPS 选项

代码语言:javascript
复制
--no-check-certificate   #下载文件时,不验证服务器的证书
--certificate=FILE       #指定客户端证书文件
--certificate-type=TYPE  #指定客户端证书类型
--private-key=FILE       #指定私钥文件
--private-key-type=TYPE  #指定私钥文件类型

FTP选项

代码语言:javascript
复制
-–passive-ftp   #使用被动传输模式
-–active-ftp    #使用主动传输模式
-–retr-symlinks  #在递归的时候,将链接指向文件(而不是目录)

应用举例

从 www.mingongge.com下载默认的主页文件(index.htm),将该文件保存到当前工作目录

代码语言:javascript
复制
wget https://www.mingongge.com

从www.mingongge.com下载文件 mysql_backup.tar.gz,并将下载的带宽使用限制为 20k/s。

代码语言:javascript
复制
wget --limit-rate=20k https://www.mingongge.com/backup/mysql_backup.tar.gz

从www.mingongge.com下载文件 mysql_backup.tar.gz,如果之前下载过此文件(当前目录存在此文件)将从断开的地方继续下载,即断点续传功能。

代码语言:javascript
复制
wget -c https://www.mingongge.com/backup/mysql_backup.tar.gz

后台下载www.mingongge.com/backup/mysql_backup.tar.gz

代码语言:javascript
复制
wget -b https://www.mingongge.com/backup/mysql_backup.tar.gz

察看后台下载进度

代码语言:javascript
复制
[root@CentOS7-1 ~]# wget -b https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.32-el7-x86_64.tar.gz
Continuing in background, pid 1974.
Output will be written to ‘wget-log’.
[root@CentOS7-1 ~]# tail -f wget-log
 59100K .......... .......... .......... .......... ..........  8% 9.53M 64s
 59150K .......... .......... .......... .......... ..........  8% 10.5M 64s
 59200K .......... .......... .......... .......... ..........  8% 11.4M 64s
 59250K .......... .......... .......... .......... ..........  8% 9.05M 64s
 59300K .......... .......... .......... .......... ..........  8% 11.0M 64s
 59350K .......... .......... .......... .......... ..........  8% 9.75M 64s
 59400K .......... .......... .......... .......... ..........  8% 10.8M 64s
 59450K .......... .......... .......... .......... ..........  8% 9.00M 64s
 59500K .......... .......... .......... .......... ..........  8% 12.0M 64s
 59550K .......... .......... .......... .......... ..........  8% 4.80M 64s
 59600K .......... .......... .......... .......... ..........  8% 84.9M 64s
 59650K .......... .......... .......... .......... ..........  8% 14.8M 64s
 59700K .......... .......... .......... .......... ..........  8% 8.33M 64s
 59750K .......... .......... .......... .......... ..........  8% 12.0M 64s
 59800K .......... .......... .......... .......... ..........  8% 11.4M 64s
 59850K .......... .......... .......... .......... ..........  8% 8.77M 64s
 59900K .......... .......... .......... .......... ..........  8% 2.94M 64s
 59950K .......... .......... .......... .......... ..........  8% 15.9M 64s

检查远程文件是否存在

代码语言:javascript
复制
wget --spider https://www.mingongge.com/backup/mysql_backup.tar.gz
[root@centos7 ~]# wget --spider https://www.mingongge.com/backup/mysql_backup.tar.gz
Spider mode enabled. Check if remote file exists.
--2021-03-10 09:30:41--  https://www.mingongge.com/backup/mysql_backup.tar.gz
Resolving www.mingongge.com (www.mingongge.com)... 104.164.133.141
Connecting to www.mingongge.com (www.mingongge.com)|104.164.133.141|:443... failed: Connection timed out.
Retrying.
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 民工哥技术之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 命令简介
  • 语法格式
  • 选项说明
  • 应用举例
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档