头条号:浩渺烟波
wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上。它有以下功能和特点:
(1)支持断点下传功能;这一点,也是网络蚂蚁和FlashGet当年最大的卖点,现在,Wget也可以使用此功能,那些网络不是太好的用户可以放心了;(2)同时支持FTP和HTTP下载方式;尽管现在大部分软件可以使用HTTP方式下载,但是,有些时候,仍然需要使用FTP方式下载软件;(3)支持代理服务器;对安全强度很高的系统而言,一般不会将自己的系统直接暴露在互联网上,所以,支持代理是下载软件必须有的功能;(4)设置方便简单;可能,习惯图形界面的用户已经不是太习惯命令行了,但是,命令行在设置上其实有更多的优点,最少,鼠标可以少点很多次,也不要担心是否错点鼠标;(5)程序小,完全免费;程序小可以考虑不计,因为现在的硬盘实在太大了;完全免费就不得不考虑了,即使网络上有很多所谓的免费软件,但是,这些软件的广告却不是我们喜欢的;
wget这个命令Linux系统一般都会有自带,如果没有的话直接安装上就可以: yum -y install wget 即可。
wget的功能很强大,但是使用起来却很简单 wget [参数] url 即可。
- 下载单个文件,以ElasticSearch为例,wget url,不用加任何参数,这个是最简单的,进度会自动显示在命令行上:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.0.tar.gz
- 指定文件名。 给下载到本地的文件指定一个文件名。用到参数 -O, O是大写也可以是小写的,大写会显示进度,小写不显示进度,例如:
wget -O elasticsearch https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.0.tar.gz
- 如果想上下载的时候不显示详细信息,即后台默默的下载,用参数 -b,下载的详细信息会打印到wegt-log 中,如下:
[root@VM_0_11_centos software]# wget -b https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.0.tar.gzContinuing in background, pid 21932.Output will be written to ‘wget-log’
4: 可以设置下载的速度:-limit-rate=100k:
wget -limit-rate=100k https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.0.tar.gz
- 断点续传功能: 参数为-c
wget -c https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.0.tar.gz
- 测试连接是否可用 --spider
[root@VM_0_11_centos software]# wget --spider https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.0.tar.gzSpider mode enabled. Check if remote file exists.--2020-03-31 09:26:47-- https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.0.tar.gzResolving artifacts.elastic.co (artifacts.elastic.co)... 151.101.230.222, 2a04:4e42:1a::734Connecting to artifacts.elastic.co (artifacts.elastic.co)|151.101.230.222|:443... connected.HTTP request sent, awaiting response... 200 OKLength: 28535876 (27M) [binary/octet-stream]Remote file exists.
- 下载一个文件由于网络原因什么的可能会失败,wget默认会重试20次,20次这个也可以自己改,使用参数 --tries=30 例如:wget --tries=30 https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.0.tar.gz
- wget可以一次下载多个文件:使用参数 -i file.txt. 意思是将多个url参数写到一个文件,一个url一行,比如
[root@VM_0_11_centos software]# cat download.txt https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.0.tar.gz https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz [root@VM_0_11_centos software]# wget -i download.txt
- 参数–mirror 是下载整个镜像网站,意思就是把整个网站的所有相关文件都给下载下来:
wget –mirror -p –convert-links -P ./LOCAL URL–miror:开户镜像下载-p:下载所有为了html页面显示正常的文件–convert-links:下载后,转换成本地的链接-P ./LOCAL:保存所有文件和目录到本地指定目录
- 指定不下载某一个类文件,参数为--reject=xxx ,例如指定不下载图片:
wget --reject=png --mirror -p --convert-links -P./baidu https://www.baidu.com
- 使用-Q 限制文件的大小,此参数只有在下载多个文件的时候才起作用。比如
wget -Q5M -i download.txt
- 参数 -r -A 下载指定参数的文件:下载一个网站的所有图片 下载一个网站的所有视频 下载一个网站的所有PDF文件 wget -r -A.pdf url
- FTP下载:
匿名下载 wget -ftp URL 指定名字下载: wget -ftp-user=xxx -ftp-password=-xxx URL
14、密码和认证。
wget只能处理利用用户名/密码方式限制访问的网站,可以利用两个参数: –http-user=USER设置HTTP用户 –http-passwd=PASS设置HTTP密码 对于需要证书做认证的网站,就只能利用其他下载工具了,例如curl。
- 利用代理服务器下载:
如果用户的网络需要经过代理服务器,那么可以让wget通过代理服务器进行文件的下载。此时需要在当前用户的目录下创建一个.wgetrc文件。文件中可以设置代理服务器: http-proxy = 111.111.111.111:8080 ftp-proxy = 111.111.111.111:8080 分别表示http的代理服务器和ftp的代理服务器。如果代理服务器需要密码则使用: –proxy-user=USER设置代理用户 –proxy-passwd=PASS设置代理密码
参考:
https://www.cnblogs.com/semonxv/p/3816366.html
https://www.cnblogs.com/cindy-cindy/p/6847502.html
![d107ef0c01efa6ff64bb74b11a85eb0f.png](https://i-blog.csdnimg.cn/blog_migrate/3f343d2340d7bc82b8e23a15dc548a29.jpeg)