wget 命令用法

1. 用法/命令格式

wget  [OPTION]...  [URL]...
wget [参数列表] [目标软件、网页的网址]

长选项所必须的参数在使用短选项时也是必须的

2. 常用参数

  • 启动:
-V,  --version                   # 显示 Wget 的版本信息并退出
-h, --help # 打印帮助
-b, --background # 启动后转入后台
  • 记录和输入文件:
-o,  --output-file=FILE          # 将日志信息写入【FILE】
-a, --append-output=FILE # 将信息添加至【FILE】
-q, --quiet # 安静模式 (无信息输出)
-v, --verbose # 详细输出 (默认)
-nv, --no-verbose # 关闭详细输出,但不进入安静模式
-i, --input-file=FILE # 下载本地或外部 [FILE] 中的 URL
  • 下载:
-t,  --tries=NUMBER              # 设置重试次数为【NUMBER】(0 代表无限制)
--retry-connrefused # 即使拒绝连接也重试
-O, --output-document=FILE # 将文档写入【FILE】(可以理解为把下载的文件重命名改为【FILE】)
-nc, --no-clobber # 不要下载已存在文件
-c, --continue # 断点续传下载文件(继续获取部分下载)
-N, --timestamping # 只获取比本地文件新的文件
-S, --server-response # 打印服务器响应头信息
--spider # 不下载任何文件
--limit-rate=RATE # 限制下载速率为 [RATE]
--ignore-case # 匹配文件/目录时忽略大小写
--user=USER # 将 ftp 和 http 的用户名均设置为【USER】
--password=PASS # 将 ftp 和 http 的密码均设置为【PASS】
--ask-password # 提示输入密码
  • 目录:
-nd, --no-directories            # 不创建目录
-x, --force-directories # 强制创建目录
-nH, --no-host-directories # 不要创建主机(www.cnglogs.com)目录
--protocol-directories # 在目录中使用协议名称(从https开始创建目录)
-P, --directory-prefix=PREFIX # 保存文件到指定的【PREFIX】目录
--cut-dirs=NUMBER # 忽略远程目录中【NUMBER】个目录层。
  • HTTP选项:
--http-user=USER            # 设置 http 用户名为【USER】
--http-password=PASS # 设置 http 密码为【PASS】
--no-cache # 不使用服务器缓存的数据。
--default-page=NAME # 改变默认页名称 (通常是“index.html”)
--no-cookies # 不使用 cookies
--save-cookies=FILE # 会话结束后保存 cookies 至【FILE】
  • HSTS选项:
--no-hsts                   # 禁用 HSTS
--hsts-file # HSTS 数据库路径(将覆盖默认值)
  • FTP选项:
--ftp-user=USER             # 设置 ftp 用户名为【USER】
--ftp-password=PASS # 设置 ftp 密码为【PASS】
--no-glob # 不在 FTP 文件名中使用通配符展开
--preserve-permissions # 保留远程文件的权限
--retr-symlinks # 递归目录时,获取链接的文件 (而非目录)
  • 递归下载:
-r,  --recursive            # 指定递归下载
-l, --level=NUMBER # 最大递归深度 (inf 或 0 代表无限制,即全部下载)。
--delete-after # 下载完成后删除本地文件
--backups=N # 写入文件 X 前,轮换移动最多 N 个备份文件
-K, --backup-converted # 在转换文件 X 前先将它备份为 X.orig
  • 递归接受/拒绝:
-A,  --accept=LIST          # 逗号分隔的可接受的扩展名列表
-R, --reject=LIST # 逗号分隔的要拒绝的扩展名列表
--accept-regex=REGEX # 匹配接受的 URL 的正则表达式
--reject-regex=REGEX # 匹配拒绝的 URL 的正则表达式
--regex-type=TYPE # 正则类型 (posix|pcre)
-D, --domains=LIST # 逗号分隔的可接受的域名列表
--exclude-domains=LIST # 逗号分隔的要拒绝的域名列表
-I, --include-directories=LIST # 允许目录的列表
-X, --exclude-directories=LIST # 排除目录的列表
-np, --no-parent # 不追溯至父目录

3. 常用实例

  • 下载单个文件/网页
wget https://www.rarlab.com/rar/rarlinux-6.0.1.tar.gz	# 下载rarlinux-6.0.1.tar.gz文件
wget https://www.rarlab.com/download.htm # 下载 download.htm 网页
  • 将下载的文件名改为指定文件名 (参数 “O” )
wget -O edit.html https://i.cnblogs.com/posts/editpostId=14660645
# 默认下载保存的文件为“editpostId=14660645”
# 使用 -O 参数后,保存的文件为指定文件名,这里是“edit.html”
  • 断点下载(参数 “c” )
# 这个参数适合下载大文件,网速不理想的场景
# 借助参数 "c", 可以继续从文件中断的地方继续下载 wget -c https://www.rarlab.com/rar/rarlinux-6.0.1.tar.gz
  • 后台下载(参数 “b”)
# 对于下载大文件时,我们可以使用参数 “b”,将进程切换到后台下载
# 切换后台下载后,我们可以通过 “wget-log”查看下载进度
# -t 参数表示重试次数,例如需要重试100次,那么就写-t 100,如果设成-t 0,那么表示无穷次重试,直到连接成功
wget -b https://www.rarlab.com/rar/rarlinux-6.0.1.tar.gz
  • 批量下载(参数 “i”)
# 自定义一个文件URLlist.txt,将需要下载的URL都输入进去,然后使用参数 “i”指定改文件即可
wget -i URLlist.txt
  • 检查网页是否可访问,而不用下载(“S“:打印响应信息,“spaider”:不下载)
wget [-S] --spaider https://www.cnblogs.com/cure/p/14660645.html
  • 指定文件格式下载(“A” 指定下载文件格式,“R”指定忽略下载文件格式)
wget -A png https://www.cnblogs.com/ 	或 wget --accept=LIST https://www.cnblogs.com/
wget -R gif https://www.cnblogs.com/ 或 wget --reject=LIST https://www.cnblogs.com/
# LIST表示可以指定多个格式
  • 指定用户名密码下载
# 此场景适合部分访问需要用户名和密码验证的 URL下载
wget --user=USER --password=PASS https://www.cnblogs.com/cure/p/14660645.html # 此方式密码明文显示
wget --user=USER --ask-password https://www.cnblogs.com/cure/p/14660645.html # 此方式密码是按回车后,提示输入密码,密码不显示(推荐)
  • 下载URL中的当前位置的所有文件
# 场景: 我需要下载文件服务器某一路径下的全部文件,但是不需要保存主页“index.html”

wget -r -np -nd -R html,tmp  https://www.cnblogs.com/cure/p/
或者:
wget -r -np -nd -A txt,zip,png[...] https://www.cnblogs.com/cure/p/ # 参数介绍:
# -r 递归下载(最好跟上np参数,不然会下载整个网站的数据及关联网站数据)
# -np 不追溯到父级(表示只访问当前位置)
# -nd 不创建文件夹
# -R 忽略/拒绝下载的格式(wget下载会默认下载主页“index.html”,拒绝下载html格式时,会保存为html.tmp文件)
# -A 指定下载的格式(只下载指定格式的文件,这样也不会下载主页“index.html”)

参考:

https://www.jianshu.com/p/59bb131bc2ab

wget 命令用法的更多相关文章

  1. Linux Shell脚本入门--wget 命令用法详解

    Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...

  2. linux wget 命令用法详解(附实例说明)

    Linux wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器   Linux wget是一个下 ...

  3. wget 命令用法详解

    wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能和特点:(1)支持断点下传功能:这一点,也是网络蚂蚁和Fl ...

  4. 【转】 wget 命令用法详解

    wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能和特点:(1)支持断点下传功能:这一点,也是网络蚂蚁和Fl ...

  5. 【转载】wget 命令用法详解

    wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能和特点:(1)支持断点下传功能:这一点,也是网络蚂蚁和Fl ...

  6. ubuntu 中wget (下载)命令用法

    Linux wget是一个下载文件的工具,它用在命令行下. 对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器 1.使用wget下载单个文件 ...

  7. wget命令8种实用用法

    大家好,我是良许. wget 是一个可以从网络上下载文件的免费实用程序,它的工作原理是从 Internet 上获取数据,并将其保存到本地文件中或显示在你的终端上. 这实际上也是大家所使用的浏览器所做的 ...

  8. wget命令2(转载)

    wget是一个从网络上自动下载文件的自由工具.它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理. 所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行.这意味这你可以登录系统,启 ...

  9. 【数据下载】利用wget命令批量下载ftp文件和文件夹

    这是一个“”数据大发现”的时代,大家都在创造数据,使用数据以及分享数据,首先一步我们就需要从数据库download我们需要的数据. Ftp是一种常见的在线数据库,今天介绍一种可以批量下载文件夹的方法, ...

随机推荐

  1. 面试题 08.12. N皇后

    题目 设计一种算法,打印 N 皇后在 N × N 棋盘上的各种摆法,其中每个皇后都不同行.不同列,也不在对角线上.这里的"对角线"指的是所有的对角线,不只是平分整个棋盘的那两条对角 ...

  2. 【二食堂】Alpha- 发布声明

    MarkTexting Alpha版本发布声明 今日我们的MarkTexting正式上线了! 功能介绍 我们实现了一个简单的文本标注生成知识图谱的网站,在Alpha阶段,我们实现的功能有: 登陆注册 ...

  3. (六)、Docker 之 Dockerfile

    1.什么是Dockerfile Dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本. 2.Dockerfile解析过程 前提认知: 每条保留字指令都必须为大写字母 ...

  4. Linux线程互斥学习笔记--详细分析

    一.互斥锁 为啥要有互斥? 多个进程/线程执行的先后顺序不确定,何时切出CPU也不确定. 多个进程/线程访问变量的动作往往不是原子的. 1. 操作步骤 (1)创建锁 // 创建互斥锁mutex pth ...

  5. C++实现红黑树

    红黑树的应用: 利用key_value对,快速查找,O(logn) socket与客户端id之间,形成映射关系(socket, id) 内存分配管理 一整块内存,不断分配小块 每分配一次,就加入到红黑 ...

  6. Python matplotlib pylot和pylab的区别

    matplotlib是Python中强大的绘图库. matplotlib下pyplot和pylab均可以绘图. 具体来说两者的区别 pyplot 方便快速绘制matplotlib通过pyplot模块提 ...

  7. JS基础面试

    1. JS是高级语言弱类型语言 脚本语言 1.1高级语言我们写完的代码不能直接执行,要先经过js引擎翻译成0101这种机器语言才能执行 1.2 弱类型语言变量可以在前一行设置为一个数字,下一行修改为一 ...

  8. 更优于 Shellinabox 的 web shell 工具 -- ttyd

    ttyd 是一个运行在服务端,客户端通过web浏览器访问从而连接后台 tty (pts伪终端)接口的程序,把 shell 终端搬到 web 浏览器中. WebSocket WebSocket 是 HT ...

  9. kafka的安装

    kafka是基于java环境的,所以需要先安装java环境 centos:yum install java-11-openjdk ubuntu:apt install default-jdk 默安装默 ...

  10. 羽夏看Win系统内核——保护模式篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...