【每天一个 Linux 命令】wget 命令用法详解_wget

【每天一个 Linux 命令】wget 命令用法详解_wget –local-encodingENC 使用 ENC 作为 IRI (国际化资源标识符) 的本地编码–remote-encodingENC 使

–local-encoding=ENC 使用ENC 作为IRI(国际化资源标识符)的本地编码。

–remote-encoding=ENC 使用ENC 作为默认远程编码

–unlink 在覆盖之前删除文件

目录:

-nd, –no-directorys 不创建目录

-x, –force-directory 强制创建目录

-nH, –no-host-directories 不创建主(主机)目录

–protocol-directories 在目录中使用协议名称

-P, –directory-prefix=prefix 将文件保存到prefix/.

–cut-dirs=number 忽略远程目录中的number 目录级别。

HTTP 选项:

–http-user=user http 将用户名设置为user

–http-password=password 设置http密码为password

–no-cache 不要使用服务器缓存的数据。

–default-page=NAME 更改默认页面(通常为“index.html”)。

-E, –adjust-extension 使用适当的扩展名保存HTML/CSS 文档

–ignore-length 忽略标头的“Content-Length”区域

header=string 在标题中插入字符串

max-redirect 每页允许的最大重定向数

proxy-user=user 使用user 作为代理用户名

–proxy-password=password 使用密码作为代理密码

referer=URL 在HTTP 请求标头中包含“Referer: URL”

save-headers 将HTTP 标头保存到文件中。

-U, –user-agent=Agent 将自己标识为代理而不是Wget/VERSION。

no-http-keep-alive 禁用HTTP keepalive(持久连接)。

no-cookies 不使用cookies。

load-cookies=file 在启动会话之前从文件加载cookie。

save-cookies=FILE 会话结束后将cookie 保存到文件中。

keep-session-cookies 加载和保存会话(非持久)cookie。

post-data=string 使用POST 方法发送字符串作为数据。

post-file=File 使用POST 方法发送文件的内容。

method=HTTP 方法使用请求中指定的HTTP 方法。

–post-data=string 将字符串作为数据发送。 –必须设置方法

–post-file=文件发送文件的内容。 –必须设置方法

–content-disposition 选择本地文件名时允许Content-Disposition

头(实验版)。

content-on-error 输出服务器错误时收到的内容

auth-no-challenge 发送基本HTTP 凭据,无需等待来自服务器的第一个请求。

HTTPS (SSL/TLS) 选项:

–secure-protocol=PR 选择安全协议。自动、SSLv2、

SSLv3、TLSv1 和PFS 之一。

–https-only 仅遵循安全的HTTPS 链接

–no-check-certificate 不验证服务器的证书。

–certificate=file 客户端证书文件。

–certificate-type=类型客户端证书类型、PEM 或DER。

–private-key=file 私钥文件。

–private-key-type=类型私钥文件类型,PEM 或DER。

–ca-certificate=file 包含一组CA 证书的文件。

–ca-directory=DIR 保存CA 证书哈希列表的目录。

–ca-certificate=file 包含一组CA 证书的文件。

–pinnedpubkey=FILE/HASHES 公钥(PEM/DER) 文件或任何数字

在Base64 编码的sha256 哈希的开头

检查以“;”分隔的“sha256//”

凝视

HSTS 选项:

–no-hsts 禁用HSTS

–hsts-file HSTS 数据库路径(覆盖默认值)

FTP 选项:

–ftp-user=user 将FTP 用户名设置为user。

–ftp-password=password 将FTP密码设置为password。

–no-remove-listing 不要删除“.listing”文件

–no-glob 不要在FTP 文件名中使用通配符扩展。

–no-passive-ftp 禁用“被动”传输模式

–preserve-permissions 保留远程文件权限。

–retr-symlinks 当递归目录时,获取链接文件(而不是目录)。

FTPS 选项:

–ftps-implicit 使用隐式FTPS(默认端口990)

–ftps-resume-ssl 打开数据连接时恢复对连接内SSL/TLS 会话的控制。

–ftps-clear-data-connection 仅加密控制通道并使用明文进行数据传输。

–ftps-fallback-to-ftp 如果目标服务器不支持FTPS,则回退到FTP

WARC 选项:

–warc-file=文件名将请求/响应数据保存到.warc.gz 文件

–warc-header=string 在标题中插入字符串

–warc-max-size=number 将最大WARC 大小设置为number。

–warc-cdx 写入CDX 索引文件

–warc-dedup=文件名不记录此CDX 文件中列出的记录

–no-warc-compression 不要使用GZIP 压缩WARC 文件

–no-warc-digests 不计算SHA1 摘要

–no-warc-keep-log 不要将日志文件保存到WARC 记录中

–warc-tempdir=目录WARC 编写器临时文件目录

递归下载:

-r, –recursive 指定递归下载

-l, –level=number 最大递归深度(inf 或0 表示无限制,所有下载)。

–delete-after 下载完成后删除本地文件

-k, –convert-links 将下载的HTML 或CSS 中的链接指向本地文件。

convert-file-only 仅转换URL 的文件部分(通常称为基本名称)

backups=N 在写入文件X 之前轮换最多N 个备份文件

-K, –backup-converted 在转换之前将文件X 备份为X.orig。

-m, –mirror -N -r -l inf –no-remove-listing 的简写。

-p, –page-requires 下载用于显示HTML 页面的所有图像和其他元素。

strict-comments 以严格格式(SGML) 处理HTML 注释。

递归接受/拒绝:

-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 要排除的以逗号分隔的域名列表

follow-ftp 跟踪HTML 文档中的FTP 链接

–follow-tags=list 要遵循的以逗号分隔的HTML 标签列表

–ignore-tags=list 要忽略的以逗号分隔的HTML 标签列表

-H, –span-hosts 在递归时转到外部主机

-L, –relative 仅关注相对链接

-I, –include-directories=list 允许的目录列表

trust-server-names 使用重定向URL 的最后一段作为本地文件名

-X, –exclude-directories=list 排除目录列表

-np, –no-parent 不跟踪父目录。

1.使用wget下载单个文件

以下示例从Internet 下载文件并将其保存到当前目录。

wget http://cn.wordpress.org/wordpress-3.1-zh_CN.zip

下载过程中会显示进度条,包括(下载完成百分比、下载字节数、当前下载速度、剩余下载时间)。

2. 使用wget -O 下载并使用不同的文件名保存。

默认情况下,wget 使用命令中“/”之后的最后一个字符。通常文件名不正确。

错误:以下示例下载文件并将其另存为download.php?id=1080。

wget http://www.centos.bz/download?id=1

下载的文件是zip格式,但使用download.php?id=1080命令退出。

正确答案:要解决此问题,请使用参数-O 指定文件名。

wget -O wordpress.zip http://www.centos.bz/download.php?id=1080

3.使用wget limit -rate限制下载速度

默认情况下,运行wget 会占用所有可用的下载带宽。但是,如果您下载大文件并需要下载其他文件,则可能需要限制速度。

wget limit-rate=300k http://cn.wordpress.org/wordpress-3.1-zh_CN.zip

4. 使用wget -c 从断点继续上传。

使用wget -c : 恢复中断的文件下载

wget -c http://cn.wordpress.org/wordpress-3.1-zh_CN.zip

这在下载大文件时非常有用,因为如果由于网络或其他原因下载突然中断,您可以继续下载,而不必重新下载文件。如果需要继续中断的下载,可以使用-c参数。

5.使用wget -b后台下载

如果您正在下载一个非常大的文件,可以使用参数-b在后台下载。

wget -b http://cn.wordpress.org/wordpress-3.1-zh_CN.zip

继续在后台运行,pid 1840。

输出写入“wget-log”。

您可以使用以下命令检查下载进度

尾-f wget-log

6.假代理名称下载

有些网站可能认为代理名称不是浏览器并拒绝下载请求。但是,您可以使用–user-agent 参数来掩盖这一点。

wget user-agent=”Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, Gecko 等) Chrome/10.0.648.204 Safari/534.16\’\’ 下载链接

7.使用wget spider测试下载链接

如果您计划执行计划下载,则应测试下载链接在计划时间是否有效。可以通过添加–spider参数来检查。

wget 蜘蛛URL

如果下载链接正确就会显示

wget 蜘蛛URL

蜘蛛模式已启用。检查远程文件是否存在。

HTTP 请求已发送并等待响应. 200 OK

长度: 未指定[text/html]

远程文件可能存在并且可能包含其他链接。

但是,递归被禁用并且无法进行检索。

这可确保下载在预定时间继续进行,但如果您提供错误的链接,您将收到以下错误:

wget 蜘蛛URL

蜘蛛模式已启用。检查远程文件是否存在。

HTTP 请求已发送,正在等待响应. 404 Not Found

远程文件不存在- 链接已损坏!

Spider参数可以在以下情况下使用:

请在预定下载前检查

定期检查网站可用性

检查您的网站页面是否有损坏的链接

8. 使用wget tries 增加重试次数。

如果存在网络问题或下载大文件,它也可能会失败。默认情况下,wget 重试连接和下载文件20 次。如果需要,您可以使用–tries 增加重试次数。

wget tries=40 URL

9.使用wget -i下载多个文件

首先,保存下载链接文件

Cat文件列表.txt

网址1

网址2

网址3

网址4

然后使用参数-i下载这个文件

wget -i 文件列表.txt

10. wget mirror 使用镜像网站

下面的示例将整个网站下载到本地。

wget mirror -p convert-links -P ./本地URL

miror: 开户镜像下载

-p: 下载所有文件以正常显示HTML 页面。

convert-links: 下载后转换为本地链接

-P ./LOCAL:将本地所有文件和目录保存到指定目录

11、使用wget reject过滤指定格式的下载

如果您想下载网站但不下载图像,可以使用以下命令:

wget reject=gif 网址

12. 使用wget -o 将下载信息保存到日志文件中

如果您不想直接在终端中显示下载信息,而是希望将其显示在日志文件中,可以使用以下命令:

wget -o download.log URL

13.使用wget -Q限制总下载文件大小

如果要下载的文件超过5M,想要完成下载,可以使用以下命令:

wget -Q5m -i 文件列表.txt

注意:此参数不适用于单个文件下载,仅适用于递归下载。

14、使用wget -r -A 下载指定格式的文件

此功能可用于以下情况:

从网站下载所有图像

从网站下载所有视频

下载您网站上的所有PDF 文件

wget -r -A.pdf URL

15.使用wget FTP下载

可以使用wget完成FTP链接下载。

使用wget 匿名ftp 下载

wget ftp-url

ftp下载使用wget用户名密码认证

wget ftp-user=用户名ftp-password=密码URL

wget 是Hrvoje Niksic 在Linux 上开发的开源软件,后来移植到包括Windows 在内的各种平台。它具有以下功能和特点:

(1) 支持断点下载功能。这是当时Internet Ant 和FlashGet 的一大卖点,现在Wget 也提供了这个功能,为网络连接不稳定的用户提供了安心。

(2) 支持FTP和HTTP两种下载方式。虽然现在大多数软件都可以使用HTTP 下载,但您可能仍然需要使用FTP 来下载软件。

(3)代理服务器支持。高安全性系统通常不会将系统直接暴露于互联网。因此,代理服务器支持是下载软件所必需的功能。

(4)配置方便、简单。习惯图形界面的用户可能不太熟悉命令行。但在实践中,命令行的优点至少是很多鼠标点击配置。您不必担心点击鼠标。

(5)如果程序很小,可以忽略,因为硬盘太大,但是免费软件很多,应该考虑一下。互联网上,这些软件的广告并不合我们的胃口。

wget虽然功能强大,但它的基本语法是:wget [参数列表] URL。下面通过具体的例子来介绍如何使用wget。

1. 下载整个http 或ftp 站点。

wget http://place.your.url/这里

此命令允许您在http://place.your.url/here 下载主页。 -x 强制在服务器上创建相同的目录。 -nd参数将服务器上所有下载的内容添加到当前本地目录中。

wget -r http://place.your.url/这里

此命令递归下载服务器上的所有目录和文件。这意味着将下载整个网站。应谨慎使用该命令。因为在下载的过程中,所有被下载网站指向的地址也都被下载了。因此,如果本网站引用了其他网站,则引用的网站也会被下载。因此,该参数并不常用。您可以使用-l number 参数指定下载级别。例如,使用-l 2 仅下载两层。

如果要创建镜像站点,可以使用-m参数,如下:

wget -m http://place.your.url/这里

此时,wget 会自动确定创建镜像站点的适当参数。此时wget登录服务器,读取robots.txt,并根据robots.txt中的规则执行。

2. 从断点处恢复传输。

如果文件很大或网络速度很慢,则在下载文件之前连接通常会断开,并且必须重新启动下载。 Wget 断点重启是自动的。只需要使用-c 参数。例如:

wget -c http:///不完整/文件.url。

我们整理了数百道**【运维技术栈面试题】**,成为您运维面试的得力助手。这将帮助您在面试时不慌不忙,并为高质量的面试做好准备。付费报价!

这些面试题涵盖了从Shell、MySQL到K8等云原生技术栈,不仅适合运维行业新人的面试需求,也适合对运维感兴趣的朋友是适合的。升职或换工作以增加薪水。 **

![](https://img-blog.csdnimg.cn/img_convert/de08b597d66023cbaf9b1149210b5698.png)

本次访谈集内容为

* **174 运维工程师面试题**

* **128道k8s面试题**

* **108 个shell 脚本面试问题**

* **200 个Linux 面试问题**

* **51 个Docker 面试问题**

* **35 个Jenkis 面试问题**

* **78 MongoDB 面试问题**

* **17 Ansible 面试问题**

* **60 个Dubbo 面试问题**

* **53 次卡夫卡访谈**

* **18道mysql面试题**

* **40 个nginx 面试题**

* **77 个Redis 面试问题**

* **28 守门员**

**总共1000多道面试题,内容丰富、信息丰富**

* **174 运维工程师面试题**

1.什么是运维?

2、运维人员在工作场所经常需要与操作人员进行交互。运营人员做什么工作?

3. 给定300台服务器,如何管理它们?

4、我们简单解释一下raid0、raid1和raid5这两种运行模式的运行原理和特点。

5、LVS、Nginx、HAproxy有什么区别,工作中如何选择?

6. Squid、Varinsh、Nginx 有什么区别,你在工作中如何选择?

7.Tomcat和Resin有什么区别?

8.什么是中间件?

9. Tomcat 的三个端口8005、8009、8080 是什么意思?

10.什么是CDN?

11.什么是网站灰度发布?

12、请简单说明一下DNS域名解析的过程。

13.什么是RabbitMQ?

14.Keepalived如何工作?

15.描述LVS工作流程的三种模式。

16、mysql的innodb如何识别锁定问题以及mysql如何减少主从复制延迟?

面试题和内容丰富,含量高**

* **174 运维工程师面试题**

1.什么是运维?

2、运维人员在工作场所经常需要与操作人员进行交互。运营人员做什么工作?

3. 给定300台服务器,如何管理它们?

4、我们简单解释一下raid0、raid1和raid5这两种运行模式的运行原理和特点。

5、LVS、Nginx、HAproxy有什么区别,工作中如何选择?

6. Squid、Varinsh 和Nginx 之间有什么区别?

么区别,工作中你怎么选择?
> 7、Tomcat和Resin有什么区别,工作中你怎么选择?
> 8、什么是中间件?什么是jdk?
> 9、讲述一下Tomcat8005、8009、8080三个端口的含义?
> 10、什么叫CDN?
> 11、什么叫网站灰度发布?
> 12、简述DNS进行域名解析的过程?
> 13、RabbitMQ是什么东西?
> 14、讲一下Keepalived的工作原理?
> 15、讲述一下LVS三种模式的工作过程?
> 16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
> 17、如何重置mysql root密码?

#以上关于【每天一个 Linux 命令】wget 命令用法详解_wget 的相关内容来源网络仅供参考,相关信息请以官方公告为准!

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/91390.html

(0)
CSDN的头像CSDN
上一篇 2024年6月22日
下一篇 2024年6月22日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注