linux基本功之列之wget命令实战
创始人
2024-05-28 16:17:55
0

在这里插入图片描述

文章目录

  • 前言
  • 一. wget命令介绍
  • 二. 语法格式及常用选项
  • 三. 参考案例
    • 3.1 下载单个文件
    • 3.2 使用wget -o 下载文件并改名
    • 3.3 -c 参数,下载断开链接时,可以恢复下载
    • 3.4 wget后台下载
    • 3.5 使用wget下载整个网站
  • 四. 补充与汇总常见用法
  • 总结

前言

大家好,又见面了,我是沐风晓月,本文是专栏【linux基本功-基础命令实战】的第56篇文章。

专栏地址:[linux基本功-基础命令专栏] , 此专栏是沐风晓月对Linux常用命令的汇总,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。

如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。

🏠个人主页:我是沐风晓月
🧑个人简介:大家好,我是沐风晓月,双一流院校计算机专业😉😉
💕 座右铭: 先努力成长自己,再帮助更多的人 ,一起加油进步🍺🍺🍺
💕欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信😘

一. wget命令介绍

wget命令是Linux系统用于从Web下载文件的命令行工具,支持 HTTP、HTTPS及FTP协议下载文件, 而且wget还提供了很多选项,例如下载多个文件、后台下载,使用代理等等,使用非常方便。

命令格式:wget [options] [URL]

二. 语法格式及常用选项

依据惯例,我们还是先查看帮助,使用 wget --help

如果命令没有安装,需要使用 yum install wget进行安装

[root@mufenggrow ~]# wget --help
GNU Wget 1.14,非交互式的网络文件下载工具。
用法: wget [选项]... [URL]...长选项所必须的参数在使用短选项时也是必须的。启动:-V,  --version           显示 Wget 的版本信息并退出。-h,  --help              打印此帮助。-b,  --background        启动后转入后台。-e,  --execute=COMMAND   运行一个“.wgetrc”风格的命令。日志和输入文件:-o,  --output-file=FILE    将日志信息写入 FILE。-a,  --append-output=FILE  将信息添加至 FILE。-d,  --debug               打印大量调试信息。-q,  --quiet               安静模式 (无信息输出)。-v,  --verbose             详尽的输出 (此为默认值)。-nv, --no-verbose          关闭详尽输出,但不进入安静模式。--report-speed=TYPE   Output bandwidth as TYPE.  TYPE can be bits.-i,  --input-file=FILE     下载本地或外部 FILE 中的 URLs。-F,  --force-html          把输入文件当成 HTML 文件。-B,  --base=URL            解析与 URL 相关的HTML 输入文件 (由 -i -F 选项指定)。--config=FILE         Specify config file to use.下载:-t,  --tries=NUMBER            设置重试次数为 NUMBER (0 代表无限制)。--retry-connrefused       即使拒绝连接也是重试。-O,  --output-document=FILE    将文档写入 FILE。-nc, --no-clobber              skip downloads that would download toexisting files (overwriting them).-c,  --continue                断点续传下载文件。--progress=TYPE           选择进度条类型。-N,  --timestamping            只获取比本地文件新的文件。--no-use-server-timestamps     不用服务器上的时间戳来设置本地文件。-S,  --server-response         打印服务器响应。--spider                  不下载任何文件。-T,  --timeout=SECONDS         将所有超时设为 SECONDS 秒。--dns-timeout=SECS        设置 DNS 查寻超时为 SECS 秒。--connect-timeout=SECS    设置连接超时为 SECS 秒。--read-timeout=SECS       设置读取超时为 SECS 秒。-w,  --wait=SECONDS            等待间隔为 SECONDS 秒。--waitretry=SECONDS       在获取文件的重试期间等待 1..SECONDS 秒。--random-wait             获取多个文件时,每次随机等待间隔0.5*WAIT...1.5*WAIT 秒。--no-proxy                禁止使用代理。-Q,  --quota=NUMBER            设置获取配额为 NUMBER 字节。--bind-address=ADDRESS    绑定至本地主机上的 ADDRESS (主机名或是 IP)。--limit-rate=RATE         限制下载速率为 RATE。--no-dns-cache            关闭 DNS 查寻缓存。--restrict-file-names=OS  限定文件名中的字符为 OS 允许的字符。--ignore-case             匹配文件/目录时忽略大小写。-4,  --inet4-only              仅连接至 IPv4 地址。-6,  --inet6-only              仅连接至 IPv6 地址。--prefer-family=FAMILY    首先连接至指定协议的地址FAMILY 为 IPv6,IPv4 或是 none。--user=USER               将 ftp 和 http 的用户名均设置为 USER。--password=PASS           将 ftp 和 http 的密码均设置为 PASS。--ask-password            提示输入密码。--no-iri                  关闭 IRI 支持。--local-encoding=ENC      IRI (国际化资源标识符) 使用 ENC 作为本地编码。--remote-encoding=ENC     使用 ENC 作为默认远程编码。--unlink                  remove file before clobber.目录:-nd, --no-directories           不创建目录。-x,  --force-directories        强制创建目录。-nH, --no-host-directories      不要创建主目录。--protocol-directories     在目录中使用协议名称。-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”)。-E,  --adjust-extension      以合适的扩展名保存 HTML/CSS 文档。--ignore-length         忽略头部的‘Content-Length’区域。--header=STRING         在头部插入 STRING。--max-redirect          每页所允许的最大重定向。--proxy-user=USER       使用 USER 作为代理用户名。--proxy-password=PASS   使用 PASS 作为代理密码。--referer=URL           在 HTTP 请求头包含‘Referer: URL’。--save-headers          将 HTTP 头保存至文件。-U,  --user-agent=AGENT      标识为 AGENT 而不是 Wget/VERSION。--no-http-keep-alive    禁用 HTTP keep-alive (永久连接)。--no-cookies            不使用 cookies。--load-cookies=FILE     会话开始前从 FILE 中载入 cookies。--save-cookies=FILE     会话结束后保存 cookies 至 FILE。--keep-session-cookies  载入并保存会话 (非永久) cookies。--post-data=STRING      使用 POST 方式;把 STRING 作为数据发送。--post-file=FILE        使用 POST 方式;发送 FILE 内容。--content-disposition   当选中本地文件名时允许 Content-Disposition 头部 (尚在实验)。--content-on-error      output the received content on server errors.--auth-no-challenge     发送不含服务器询问的首次等待的基本 HTTP 验证信息。HTTPS (SSL/TLS) 选项:--secure-protocol=PR     choose secure protocol, one of auto, SSLv2,SSLv3, TLSv1, TLSv1_1 and TLSv1_2.--no-check-certificate   不要验证服务器的证书。--certificate=FILE       客户端证书文件。--certificate-type=TYPE  客户端证书类型,PEM 或 DER。--private-key=FILE       私钥文件。--private-key-type=TYPE  私钥文件类型,PEM 或 DER。--ca-certificate=FILE    带有一组 CA 认证的文件。--ca-directory=DIR       保存 CA 认证的哈希列表的目录。--random-file=FILE       带有生成 SSL PRNG 的随机数据的文件。--egd-file=FILE          用于命名带有随机数据的 EGD 套接字的文件。FTP 选项:--ftp-user=USER         设置 ftp 用户名为 USER。--ftp-password=PASS     设置 ftp 密码为 PASS。--no-remove-listing     不要删除‘.listing’文件。--no-glob               不在 FTP 文件名中使用通配符展开。--no-passive-ftp        禁用“passive”传输模式。--preserve-permissions  保留远程文件的权限。--retr-symlinks         递归目录时,获取链接的文件 (而非目录)。WARC options:--warc-file=FILENAME      save request/response data to a .warc.gz file.--warc-header=STRING      insert STRING into the warcinfo record.--warc-max-size=NUMBER    set maximum size of WARC files to NUMBER.--warc-cdx                write CDX index files.--warc-dedup=FILENAME     do not store records listed in this CDX file.--no-warc-compression     do not compress WARC files with GZIP.--no-warc-digests         do not calculate SHA1 digests.--no-warc-keep-log        do not store the log file in a WARC record.--warc-tempdir=DIRECTORY  location for temporary files created by theWARC writer.递归下载:-r,  --recursive          指定递归下载。-l,  --level=NUMBER       最大递归深度 (inf 或 0 代表无限制,即全部下载)。--delete-after       下载完成后删除本地文件。-k,  --convert-links      让下载得到的 HTML 或 CSS 中的链接指向本地文件。--backups=N   before writing file X, rotate up to N backup files.-K,  --backup-converted   在转换文件 X 前先将它备份为 X.orig。-m,  --mirror             -N -r -l inf --no-remove-listing 的缩写形式。-p,  --page-requisites    下载所有用于显示 HTML 页面的图片之类的元素。--strict-comments    用严格方式 (SGML) 处理 HTML 注释。递归接受/拒绝:-A,  --accept=LIST               逗号分隔的可接受的扩展名列表。-R,  --reject=LIST               逗号分隔的要拒绝的扩展名列表。--accept-regex=REGEX        regex matching accepted URLs.--reject-regex=REGEX        regex matching rejected URLs.--regex-type=TYPE           regex type (posix|pcre).-D,  --domains=LIST              逗号分隔的可接受的域列表。--exclude-domains=LIST      逗号分隔的要拒绝的域列表。--follow-ftp                跟踪 HTML 文档中的 FTP 链接。--follow-tags=LIST          逗号分隔的跟踪的 HTML 标识列表。--ignore-tags=LIST          逗号分隔的忽略的 HTML 标识列表。-H,  --span-hosts                递归时转向外部主机。-L,  --relative                  只跟踪有关系的链接。-I,  --include-directories=LIST  允许目录的列表。--trust-server-names             use the name specified by the redirectionurl last component.-X,  --exclude-directories=LIST  排除目录的列表。-np, --no-parent                 不追溯至父目录

为了更直观一些,我们把常用的参数用表格来展示:

参数描述
-P指定文件的下载目录。
-c:断点续传,如果文件已经下载过一部分,可以使用该选项继续下载。
-O将下载的文件重命名。
-b:后台下载模式,可以在后台下载文件。
-t:指定下载重试的次数。
-T指定下载的超时时间。
-q:静默模式,不显示任何下载进度信息。
-U指定用户代理标识,用于伪装浏览器身份。
-r:递归下载,可以下载整个网站。
-np不下载上级目录。

有了具体的参数之后,我们再来看实战案例:

三. 参考案例

3.1 下载单个文件

此时,无需加任何参数

案例一: 下载最新版本的wordpress

[root@mufenggrow ~]# wget https://wordpress.org/latest.zip

可以看到下载过程中,有进度条,已下载的字节数,当前下载速度,以及剩余下载时间:

在这里插入图片描述

唯一的一个缺点就是下载的文件必须跟网站文件名相同,只能下载下来再改名
在这里插入图片描述
如果要改名需要用到 -O参数

3.2 使用wget -o 下载文件并改名

-O(大写) 可以不同的名字保存。

[root@mufenggrow ~]# wget -O wordpress.zip  https://wordpress.org/latest.zip

这样下载完就变成了wordpress.zip,不是原来的latest.zip

在这里插入图片描述

3.3 -c 参数,下载断开链接时,可以恢复下载

下载的过程中最头疼的也许就是下载过程中突然断开吧,想要断点续传? 它来了,它就是 -c参数

[root@mufenggrow ~]# wget -cO wordpress.zip  https://wordpress.org/latest.zip

多个参数可以一起用,比如这里的-cO

3.4 wget后台下载

有些时候下载时间过长,那就让它在后台下载,在后台下载的参数用 -b, 下载大文件的时候超级好用。

[root@mufenggrow ~]# wget -bO wordpress.zip  https://wordpress.org/latest.zip
继续在后台运行,pid 为 81793。
将把输出写入至 “wget-log”

要查看 wget 命令的下载进度等信息,可以运行 tail 命令 tail -f wget-log 查看wget 命令的下载状态。

[root@mufenggrow ~]# tail -f wget-log 

在这里插入图片描述

3.5 使用wget下载整个网站

wget --mirror --convert-links --adjust-extension --page-requisites --no-parent  www.itlaoxin.com

这个命令可以递归地下载整个网站,并转换链接和文件名,使得网站可以在本地离线浏览。

下载完成后,可以启动apache,直接本地访问网站,这样你就仿佛拥有了一个一模一样的网站哦。

四. 补充与汇总常见用法

总结以下wget的常见用法:

  • 下载单个文件:wget http://example.com/file.zip
  • 指定下载目录:wget -P /home/user/Downloads http://example.com/file.zip
  • 断点续传:wget -c http://example.com/file.zip
  • 重命名文件:wget -O newfile.zip http://example.com/file.zip
  • 后台下载:wget -b http://example.com/file.zip
  • 限制下载次数:wget -t 5 http://example.com/file.zip
  • 限制超时时间:wget -T 10 http://example.com/file.zip
  • 静默模式:wget -q http://example.com/file.zip
  • 递归下载整个网站:wget -r http://example.com
  • 不下载上级目录:wget -np http://example.com/dir/file.zip

总结

💕💕💕 好啦,这就是今天要分享给大家的全部内容了,我们下期再见!✨ ✨ ✨
🍻🍻🍻如果你喜欢的话,就不要吝惜你的一键三连了~

请添加图片描述
在这里插入图片描述

相关内容

热门资讯

安卓系统和oppo系统哪个流畅... 你有没有想过,手机系统哪个更流畅呢?安卓系统和OPPO系统,这两个名字听起来就让人心动。今天,咱们就...
安卓怎么用微软系统,利用微软系... 你是不是也和我一样,对安卓手机上的微软系统充满了好奇?想象那熟悉的Windows界面在你的安卓手机上...
安卓系统如何安装nfc,安卓系... 你有没有想过,用手机刷公交卡、支付账单,是不是比掏出钱包来得酷炫多了?这就得归功于NFC技术啦!今天...
ios系统可以转安卓,跨平台应... 你有没有想过,你的iPhone手机里的那些宝贝应用,能不能搬到安卓手机上继续使用呢?没错,今天就要来...
iOSapp移植到安卓系统,i... 你有没有想过,那些在iOS上让你爱不释手的app,是不是也能在安卓系统上大放异彩呢?今天,就让我带你...
现在安卓随便换系统,探索个性化... 你知道吗?现在安卓手机换系统简直就像换衣服一样简单!没错,就是那种随时随地、随心所欲的感觉。今天,就...
安卓系统安装按钮灰色,探究原因... 最近发现了一个让人头疼的小问题,那就是安卓手机的安装按钮突然变成了灰色,这可真是让人摸不着头脑。你知...
安卓7.1.1操作系统,系统特... 你知道吗?最近我在手机上发现了一个超级酷的新玩意儿——安卓7.1.1操作系统!这可不是什么小打小闹的...
安卓os系统怎么设置,并使用`... 你有没有发现,你的安卓手机有时候就像一个不听话的小孩子,有时候设置起来真是让人头疼呢?别急,今天就来...
安卓降低系统版本5.1,探索安... 你知道吗?最近安卓系统又来了一次大动作,竟然把系统版本给降到了5.1!这可真是让人有点摸不着头脑,不...
解放安卓系统被保护,解放安卓系... 你有没有想过,你的安卓手机其实可以更加自由地呼吸呢?是的,你没听错,我说的就是解放安卓系统被保护的束...
校务帮安卓系统下载,便捷校园生... 你有没有想过,你的手机里装了一个神奇的助手——校务帮安卓系统下载?没错,就是那个能让你轻松管理学校事...
安卓系统没有拼多多,拼多多崛起... 你知道吗?最近我在手机上发现了一个小小的秘密,那就是安卓系统里竟然没有拼多多这个应用!这可真是让我大...
甜城麻将安卓系统,解锁全新麻将... 你有没有听说过那个超级火的甜城麻将安卓系统?没错,就是那个让无数麻将爱好者为之疯狂的软件!今天,就让...
安卓系统卸载的软件,深度揭秘卸... 手机里的软件越来越多,是不是感觉内存不够用了?别急,今天就来教你怎么在安卓系统里卸载那些不再需要的软...
安卓系统推荐好游戏,畅享指尖乐... 手机里的游戏可是咱们休闲娱乐的好伙伴,尤其是安卓系统的用户,选择面那可是相当广呢!今天,就让我来给你...
王者安卓系统怎么卖,揭秘如何轻... 你有没有听说最近王者安卓系统的火爆程度?没错,就是那个让无数玩家沉迷其中的王者荣耀!今天,我就来给你...
安卓开发系统内置证书,基于安卓... 你有没有想过,你的安卓手机里那些神秘的内置证书,它们到底是个啥玩意儿?别急,今天就来给你揭秘这些隐藏...
荣耀安装安卓原生系统,深度体验... 你知道吗?最近荣耀手机界可是掀起了一股热潮,那就是——荣耀安装安卓原生系统!这可不是什么小打小闹,而...
安卓13小米系统,创新功能与流... 你知道吗?最近安卓13系统可谓是风头无两,各大手机厂商纷纷推出自家的新版系统,其中小米的安卓13系统...