使用wget命令下载网络资源
wget是GNU/Linux下的一个非交互式(non-interactive)网络下载工具,支持HTTP、HTTPS与FTP协议,并能够指定HTTP代理服务器。虽然wget命令与curl命令相比支持的协议并不多,且只能下载不能上传,其自身还是有一些很出色的特性的。例如,
与很多下载工具不同,wget的下载任务可以在用户登出、断开连接的情况下在后台继续运行。当用户是远程登录到主机操作且有大量资源需要下载时,这个特性非常实用。
wget能够将网站服务器上的HTML、XHTML、CSS等文件全部下载下来,并在本地创建与服务器同样的目录结构,以及将下载网页中的链接转换为本地链接。这样一来,就可以实现网站页面的本地浏览。所以,用wget下载线上的软件文档非常方便。
wget支持断点续传,因而适用于网速较慢和连接不稳定的环境。
wget命令的控制参数比较多,下面对其中较为常用的部分予以介绍。
-c:执行断点续传。-i file_name:可以将所有需要下载的链接都放入文件file_name中,然后wget则可以批量执行下载任务。-r:执行递归下载。-l recursion_level:指定递归下载的目录深度。-l 0则为不限制深度。-np:递归下载时不要上升到父目录,即只限定在指定的网站目录内下载。-H:递归下载时如果页面依赖外部网站资源,使该选项则可以对其下载。-t retry_times:指定当连接中断时重新尝试连接的次数。-t 0则为无限次尝试重连。-N:保留下载文件的时间戳。-p:令wget下载HTML页面需要加载的所有相关文件,包括图片、声音、样式单等。-k:令wget在下载任务结束后,将文件中的链接转为本地链接,从而适于本地页面浏览。--proxy-user与--proxy-password:指定代理服务器的用户名与密码。代理服务器的地址则可以在环境变量http_proxy或ftp_proxy中设定。--no-remove-listing:在从FTP下载文件的过程中不移除包含远端服务器目录与文件列表信息的.listing临时文件。该文件可用于核验是否完成了对所有文件的下载。-m:该选项适用于完整地镜像一个站点。其等价于-r -N -l inf --no-remove-listing,即含义为:无限深度递归下载,保留源文件的时间戳,并保留.listing文件。
将上述参数进行有机组合,则可以实现我们期望的任何下载任务了。例如,使用如下命令下载整个网站用于本地浏览。
$ wget -c -r -l 0 -t 0 -p -np -k -H https://plus.maths.org/content/
本文对wget命令的介绍就到这里。感兴趣的朋友可以在自己的GNU/Linux系统上尝试一下。Windows用户亦可以在Cygwin下运行wget。
使用wget命令下载网络资源的更多相关文章
- Linux wget 命令下载文件
wget是Linux系统中用来下载文件的工具,其功能还是比较多的,能够下载单个文件,也可以分段下载,下面小编将针对wget命令的用法给大家做个实例介绍. 实例1 :下载单个文件 # wget http ...
- 用wget命令下载jdk
Oracle官网上下载jdk,需要点击accept licence的才能下载,使用下面的命令,直接可以下载.wget --no-check-certificate --no-cookies --hea ...
- wget命令下载文件
wget -r -N -l -k http://192.168.99.81:8000/solrhome/ 命令格式: wget [参数列表] [目标软件.网页的网址] -V,–version 显示软 ...
- wget命令下载FTP整个目录进行文件备份
使用wget下载整个FTP目录,可以用于服务器间文件传输,进行远程备份.通过限制网速,可以解决带宽限制问题. #wget ftp://IP:PORT/* --ftp-user=xxx --ftp-pa ...
- Ubuntu 使用wget 命令下载JDK
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-co ...
- 使用wget命令下载JDK失败(文件特别小)
问题RT: 我们在网页上下载的时候要点一下 “Accept License Agreement ” ,使用wget下载的时候也需要提交这个 accept,方法如下: wget --no-check-c ...
- Wget命令下载、备份博客
-np http://www.cnblogs.com/memory4young/p/ 参考资料: http://www.cnblogs.com/memory4young/p/wget-backup-b ...
- linux wget指定下载目录和重命名
当我们在使用wget命令下载文件时,通常会需要将文件下载到指定的目录,这时就可以使用 -P 参数来指定目录,如果指定的目录不存在,则会自动创建. 示例: p.p1 { margin: 0; font: ...
- wget命令8种实用用法
大家好,我是良许. wget 是一个可以从网络上下载文件的免费实用程序,它的工作原理是从 Internet 上获取数据,并将其保存到本地文件中或显示在你的终端上. 这实际上也是大家所使用的浏览器所做的 ...
随机推荐
- Oracle windows64位 百度云下载链接
oracle11g安装包 去官网需要登录 这个是百度云盘链接 链接:https://pan.baidu.com/s/18lYrkqqHG8u4aDdQekHc3g 提取码:fg2v
- iOS程序员 如何做到升职加薪,5年 开发经验 码农 笔记送给你!
前言: 对于我们绝大多数人来说,工作最基本的意义是我们可以通过自己的劳动换取酬劳来养活自己,尤其是对于刚毕业的学生,拥有一份全日制的工作意味着自己走出校园,踏上社会,自己真正开始独立起来. 在养活自己 ...
- Borůvka algorithm
Borůvka algorithm 我好无聊啊,直接把wiki的算法介绍翻译一下把. wiki关于Borůvka algorithm的链接:链接 Borůvka algorithm是一个在所有边权都是 ...
- netty的基本介绍
一.什么是netty?为什么要用netty netty是jboss提供的一个java开源框架,netty提供异步的.事件驱动的网络应用程序框架和工具,用以快速开发高性能.高可用性的网络服务器和客户端程 ...
- axios传参
get //通过给定的ID来发送请求 axios.get('/user?ID=12345') .then(function(response){ console.log(response); }).c ...
- 对半导体制造(FAB)工种的全方位解析
本文转载自微信公众号 - 感集网, 链接 https://mp.weixin.qq.com/s/MRoWRbKZFBrJcQAZPqDa7w
- docker部署archery
一.centos7部署docker 1 通过 uname -r 命令查看你当前的内核版本 uname -r 2 确保 yum 包更新到最新. yum update 3 卸载旧版本 yum remov ...
- mysql 关联表修改数据
UPDATE t1 INNER JOIN t2 ON t1.c1=t2.c1 SET t1.c2=value WHERE t1`removed`=0 AND t2`removed`=0 AND t1 ...
- python selenium 最简单示例
使用 pip 安装 selenium 下载 chromedriver,添加在PATH中 # -*- coding: utf-8 -*- from selenium import webdriver ...
- Linux 文本处理工具记录
Shuffle lines of multi files 现在有 1000 个文本文件(0.txt ~ 999.txt),每个文件大概 11M,总共 11G,我想把这 1000 个文本文件的内容随机组 ...