参考资料:

  https://www.cnblogs.com/ftl1012/p/9265699.html

  https://www.cnblogs.com/lsdb/p/7171779.html

  curl和wget都是Linux下常用的下载工具,区别在于,curl可以自定义各种请求参数,所以在模拟web请求方面更擅长;而wget由于支持ftp和递归(recursive)下载,所以在下载文件方面更擅长。类比的话curl好比浏览器,而wget是迅雷。

  因为计网实验的原因接触了wget,之前虽也有所耳闻但是却只知有这个下载工具,不知怎么使用,有什么功能。下面总结一下学到的wget常用的命令,以便日后查阅,有需求时深入学习。

  首先给出最实用的几个命令:

wget -c + URL或者文件名    # 支持断点续传的下载
wget -b + URL或者文件名 # 后台下载
wget -i list # 预先给定URL列表,下载list中URL对应的文件
wget -x -r -A "*.txt" + URL 一般为目录 # 递归的下载目标目录下所有的目录和文件,并在本地创建对应文件目录
wget -nd -r -A "*.txt" + URL 一般为目录 # 递归的下载目标目录下所有的目录和文件,并不在本地创建对应文件目录
wget –x –r –R "*.txt" + URL 一般为目录 # 递归下载除某后缀之外的文件,并创建目录结构
wget –nd –r –R "*.txt" + URL 一般为目录 # 递归下载除某后缀之外的文件,并不创建目录结构
wget –m + URL 一般为目录 # 创建镜像,即完全copy

  这里补充一下递归下载的概念,这是一个很重要的特性。我们经常会听到递归搜索,递归下载。这里的递归指的是在当前目录和所有子目录。如果不使用递归下载,则只会下载当前文件夹下的文件,而忽略当前文件夹下的目录。也就是说子目录和子目录下的文件都不会被下载。

  下面罗列一些wget命令的常用参数:

参数

参数含义

‐‐help

显示 wget 的联机帮助,本表中仅仅给出了部分参数的使用,更详 细的参数使用请查阅联机帮助

‐A

表示仅接受指定的文件类型,如‐A "*.gif"将仅下载 gif 图片,如果 有多个允许可以使用“,”分开

‐b

让 wget 在后台运行,记录文件写在当前目录下"wget‐log"文件中

‐t [nuber of times]

当 wget 无法与服务器建立连接时,尝试连接多少次。比如"‐t 120" 表示尝试 120 次。当这一项为"0"的时候,指定尝试无穷多次直到 连接成功为止

‐c

断点续传,这也是个非常有用的设置,特别当下载比较大的文件 的时候,如果中途意外中断,那么连接恢复的时候会从上次没传 完的地方接着传,而不是又从头开始

‐T [number of sec]

超时时间。如"‐T 120"表示如 120 秒以后远程服务器没有发过来数 据,就重新尝试连接。如果网络速度比较快,这个时间可以设置 的短些

‐w [number of seco]

在两次尝试之间等待多少秒,比如"‐w 100"表示两次尝试之间等待 100 秒

‐Q [byetes]

限制下载文件的总大小不能超过多少,如"‐Q2k"表示不能超过 2K 字节,"‐Q3m"表示不能超过 3M 字节

‐nd

不下载目录结构,把从服务器所有指定目录下载的文件都堆到当 前目录里

‐x

与"‐nd"设置刚好相反,如"wget ‐x http://a.b.c"将创建在当前目录 下创建"a.b.c"子目录,然后按照服务器目录结构一级一级建下去, 直到所有的文件都传完

‐nH

不创建以目标主机域名为目录名的目录,将目标主机的目录结构 直接下到当前目录下

‐‐http‐user=xxx

如果 Web 服务器需要指定用户名和口令,用这两项来设定

‐‐http‐passwd=xxx

 

‐i download_list

下载文件“download_list”中列出的所有 URL

‐k

将链接转换为本地连接

‐‐proxy‐user=xxx

如果代理服务器需要输入用户名和口令,使用这两个选项

‐‐proxy‐passwd=xxx

 

‐r

‐‐recursive

specify recursive download

‐R

指定拒绝的文件类型,如‐R "*.gif"将不下载 gif 图片,如果有多个 不允许,可以使用“,”分开

‐l [depth]

下载远程服务器目录结构的深度,例如"‐l 5"下载目录深度小于或 者等于 5 以内的目录结构或者文件

‐m

做站点镜像时的选项,如果你想做一个站点的镜像

‐np

只下载目标站点指定目录及其子目录的内容

wget介绍和命令总结的更多相关文章

  1. linux中wget未找到命令

    (转)linux中wget未找到命令   转:https://blog.csdn.net/djj_alice/article/details/80407769 在装数据库的时候发现无法使用wget命令 ...

  2. (转)linux中wget未找到命令

    转:https://blog.csdn.net/djj_alice/article/details/80407769 在装数据库的时候发现无法使用wget命令,提示未找到命令,如图所示 那是因为没有安 ...

  3. 03_Linux介绍、命令

    学于黑马和传智播客联合做的教学项目 感谢 黑马官网 传智播客官网 微信搜索"艺术行者",关注并回复关键词"软件测试"获取视频和教程资料! b站在线视频 Linu ...

  4. 关于 ‘--exec’ 参数( find 命令)及介绍 ‘xargs ’命令区别(新版)

    前言: find 命令一直都是系统管理员的常用命令之一, 其参数中 "-exec" 尤其实用.而 "xargs" 命令,针对查询也有属于自己的见解.本文着重讲解 ...

  5. 1.docker介绍、命令、容器、镜像、数据卷、Dockerfile、常用软件安装、推送阿里云

    一.docker介绍 1.docker是什么 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置.作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各 ...

  6. USB系列之七:ASPI介绍及命令测试

    在以前的一篇博文<关于构建DOS下编程平台的总结>中曾经介绍了一种在DOS下驱动U盘的方法,我们大致回顾一下.在config.sys中加入两个驱动程序,就可以驱动U盘:device = a ...

  7. docker简单介绍----Dockerfile命令

    DockerFile的组成部署: 下面优先介绍下Dcokerfile的基础指令 一.CMD指令:容器启动时要莫热门运行的命令,如果有多个CMD指定,最后一个生效 使用方法: CMD ["ex ...

  8. 腾讯云ping wget yum 常用命令设置问题

    遇到ping wget yum 命令不能正常使用的情况是因为腾讯云有些配置: root执行如下即可: wget -q http://mirrors.tencentyun.com/install/sof ...

  9. wget常用下载命令

    wget wget是一个从网络上自动下载文件的自由工具,支持通过HTTP.HTTPS.FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理.wget名称的由来是“World Wide Web ...

随机推荐

  1. 【python爬虫】scrapy入门7:Scrapy中runspider和crawl的区别

    runspider:不依赖创建项目 命令:scrapy runspider myspider.py  等同于  pyhton myspider.py crawl:使用spider进行爬取,依赖项目创建 ...

  2. MySql 常用的函数

    一.聚合函数 avg(col)      计算平均值    count(col)    计算中非NULL值的个数(这个容易忘)    greatest(x1,x2,...,xn) 返回集合中最大的值  ...

  3. jpype2

    # -*- coding: utf-8 -*-# @Time : 2020/5/21 0:04# 从环境变量获取jvm虚拟机安装路径,若为None则获取默认路径import os import jpy ...

  4. mantisbt2.22.1 中使用自带的phpmailer发送邮件(实测可用)

    mantis最新版本安装无难度,直接集成LAMP环境,解压放到web目录下运行,按界面显示一步步操作. 1.前提默认已安装好mantis,自带phpmailer的路径为:mantisbt2/vendo ...

  5. 对 eval 命令的理解

    eval 格式:eval [argument...] 可以二次迭代参数中的引用变量,然后将参数作为命令,在shell中执行 如果是多个参数,那么变量替换之后必须符合某个命令的格式,否则eval会报错& ...

  6. 微软Azure IoT驱动数字化变革线上分享会(6月4号)

    微软Azure IoT驱动数字化变革线上分享会(6月4号)   微软作为全球范围内IoT领域的领军者,以微软智能云Azure为基础和核心,推动包括物联网.机器学习.微服务.人工智能等在内的新技术的发展 ...

  7. Java之预定义

    作为Java初学者的我,提供一个类似C#的预处理机制.若有不足之处,敬请各位大佬指正(感觉没有,哈哈哈哈哈哈)! Java 没有类似 C++的宏,也没有类似C#的预定义 #if...#endif C# ...

  8. ie时间格式NAN-NAN-NAN

    js的日期对象可以识别的日期字符串有四种: 1.YYYY-MM-DD 2019-11-11 01:01:012.MM-DD-YYYY 11-11-2019 01:01:013.YYYY/MM/DD 2 ...

  9. XStream学习手册

    ​​ 一.前言 1.XStream官网 http://x-stream.github.io 2.XStream是什么 XStream是一个简单的基于Java的类库,用来将Java对象序列化成XML(J ...

  10. Java实现 LeetCode 823 带因子的二叉树(DP)

    823. 带因子的二叉树 给出一个含有不重复整数元素的数组,每个整数均大于 1. 我们用这些整数来构建二叉树,每个整数可以使用任意次数. 其中:每个非叶结点的值应等于它的两个子结点的值的乘积. 满足条 ...