1、wget 介绍
wget 是一个从网络上自动下载文件的自由工具,支持通过 HTTP、HTTPS、FTP 三个最常见的 TCP/IP协议 下载,并可以使用 HTTP 代理。"wget" 这个名称来源于 "World Wide Web"与 "get" 的结合。所谓自动下载,是指 wget 可以在用户退出系统的之后在继续后台执行,直到下载任务完成。
2、wget 语法
语法:wget [OPTION]... [URL]... #OPTION是参数 URL下载的地址
3、wget 常用参数
参数 | 用法 |
-V, --version | 显示wget的版本信息并退出 |
-h, --help | 打印帮助信息,显示命令手册。 |
-b, --background | 启动后转入后台运行。 |
-o, --output-file=FILE | 将日志消息记录到指定的文件中。 |
-a, --append-output=FIL | 将日志消息追加到指定的文件中。 |
-q, --quiet | 静默模式,下载过程中不输出任何信息。 |
-v, --verbose | 显示详细信息(默认选项)。 |
-c, --continue | 断点续传,如果下载过程中出现中断,则在新的终端重新使用wget命令,并加上该参数,即可从断点处继续下载。该参数在下载大文件时非常实用。 |
-P, --directory-prefix=PREFIX | 指定下载文件保存的目录,默认会在当前目录下保存,可以使用该参数指定保存的目录。 |
-O, --output-document=FILE | 将下载的文件写入指定的文件中,也就是对下载的文件名进行重新命名(重命名) |
-t, --tries=NUMBER | 设置重试次数为指定的数字(0为无限次数),当下载失败时重新尝试的次数。 |
-T, --timeout=SECONDS | 将所有超时值设置为指定的秒数,也就是超时时间,当多少秒内还没下载完就超时结束。 |
-w, --wait=SECONDS | 在每次下载之间等待指定秒数。 |
-i, --input-file=FILE | 从本地或外部文件中读取URL列表进行下载,这个URL列表一般存放在一个文件中。 |
--limit-rate=RATE | 限制下载速率为指定的速率。默认情况下,wget命令会以全速下载,但是有时下载一个非常大的资源的话,可能会占用大量的可用带宽,影响其他使用网络的任务,这时就要限制下载速度。 |
-U, --user-agent=AGENT | 将用户代理标识设置为指定的代理,而不是默认的Wget版本号,也就是如果远程服务器阻止wget下载资源,我们可以通过-U选项模拟浏览器进行下载。 |
--spider | 仅检查URL,判断这个URL是否存在远程文件,不下载任何内容。 |
-Q, --quota=NUMBER | 设置下载配额为指定的数字,限制总下载文件大小。 |
--report-speed=TYPE | 以指定的方式输出带宽信息。TYPE可以是bits。 |
-F, --force-html | 将输入文件视为HTML文件。 |
-nc , --no-clobber | 跳过已存在文件的下载(不覆盖它们)。 |
-N, --timestamping | 只有当远程文件新于本地文件时才重新下载。 |
-S, --server-response | 打印服务器的响应。 |
--connect-timeout=SECS | 设置连接超时时间为指定的秒数。 |
--read-timeout=SECS | 设置读取超时时间为指定的秒数。 |
--waitretry=SECONDS | 在重试下载之间等待1到指定的秒数。 |
--no-proxy | 明确禁用代理。 |
--restrict-file-names=OS | 限制文件名中允许的字符为操作系统允许的字符。 |
-4, --inet4-only | 仅连接IPv4地址。 |
-6, --inet6-only | 仅连接IPv6地址。 |
--user=USER | 将FTP和HTTP用户设置为指定的用户。 |
--password=PASS | 将FTP和HTTP密码设置为指定的密码。 |
--ask-password | 提示输入密码。 |
--unlink | 在覆盖之前删除文件。 |
4、wget 常用案例
1、使用wget下载单个文件,下载a.sh文件并保持在当前目录中
wget https://download.djl.cn/a.sh
2、使用-O 参数重命名,下载a.sh文件并对下载的文件重命名为a111.sh
wget -O a111.sh https://download.djl.cn/a.sh
3、使用-c 参数进去断点续传,重新启动下载中断的文件,对于我们下载大文件时突然由于网络等原因中断非常有帮助,我们可以继续接着下载而不是重新下载一个文件。需要继续中断的下载时可以使用-c参数。
wget -c a111.sh https://download.djl.cn/a.sh
4、使用--limit-rate 参数限速下载,当你执行wget的时候,它默认会占用全部的宽带下载。但是当你准备下载一个大文件,会影响其他使用网络的任务,就有必要限速了。下载的带宽限速为300k/s:
wget --limit-rate=300k https://download.djl.cn/a.sh
5、使用-b 参数后台下载,对于下载非常大的文件的时候,我们可以使用参数-b进行后台下载,使用后台下载,会在当前目录生成一个名字为wget-log的日志文件。
wget -b https://download.djl.cn/a.sh
6、使用--user-agent=AGENT 参数伪装代理名称下载,如果远程服务器阻止wget下载资源,我们可以通过-U或者--user-agent=AGENT选项模拟浏览器进行下载。
wget --user-agent="Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16" https://download.djl.cn/a.sh
7、使用--spider 参数测试下载链接,当你打算进行定时下载,你可以先测试下载链接是否有效,再进行下载文件。可以增加--spider参数,进行检查判断这个URL是否存在远程文件,不下载任何内容。
wget --spider https://download.djl.cn/a.sh
8、使用-t, --tries=NUMBER 参数增加重试次数,NUMBER为下载失败时重新尝试的次数,如果网络有问题或下载一个大文件也有可能失败,就重新下载。wget默认重试20次连接下载文件。如果需要,可以使用-t, --tries增加重试次数。
wget -t 50 https://download.djl.cn/a.sh
9、使用-i, --input-file=FILE 参数下载多个文件从本地或外部文件中读取URL列表进行下载,这个URL列表一般存放在一个文件中。
wget -i urllist.txt
10、使用-o, --output-file=FILE 参数把下载信息存入日志文件,你不希望下载信息直接显示在终端而是在一个日志文件,可以使用以下命令
wget -o download.log https://download.djl.cn/a.sh
11、使用-Q, --quota=NUMBER 参数限制总下载文件大小,当你想要下载的文件超过5M而退出下载,你可以使用以下命令
wget -Q5m https://download.djl.cn/a.sh
制作不易,各位看官如果觉得还可以,对您有帮助,请给小弟一键三连鼓励一下,后续还会继续保持