wget --spider命令使用方法是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了wget --spider命令使用方法是啥?相关的知识,希望对你有一定的参考价值。

我尝试使用wget的spider参数。然后要wget的返回值保存在wget_log变量里面。通过判断wget_log变量内容来判断我的wget是否成功。代码如下:
wget_log=$(wget url -nv --spider)
但是运行的时候,wget_log变量内容为空,200 OK显示在终端上面。怎么让200 OK保存在变量wget_log里面呢?
wget_log=$(wget url -nv --spider 2>&1)这样写就没问题了。但是查看了一下,2表示STDERR文件描述符,1是STDOUT文件描述符。不明白为什么--spider的结果要返回到STDERR里面?

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

wget命令加spider参数不会下载任何东西,spider的主要作用是测试下载链接。
当你打算进行定时下载,你应该在预定时间测试下载链接是否有效。我们可以增加--spider参数进行检查。 wget --spider URL

如果下载链接正确,将会显示:
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Remote file exists and could contain further links,
but recursion is disabled -- not retrieving.

这保证了下载能在预定的时间进行,但当你给错了一个链接,将会显示如下错误:
wget --spider url
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 404 Not Found
Remote file does not exist -- broken link!!!

你可以在以下几种情况下使用--spider参数:
定时下载之前进行检查
间隔检测网站是否可用
检查网站页面的死链接
增加重试次数
参考技术A wget_log=$(wget url -nv --spider 2>&1)是把wget的所有标准输出和标准错误输出到wget_log(2>&1的意思是将标准出错重定向到标准输出,和标准输出一起返回)本回答被提问者采纳

wget

造冰箱的大熊猫@cnblogs 2019/11/30

 

wget -m url 下载链接
 wget -r -p -np -k url 下载链接

以上是关于wget --spider命令使用方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

帮助文档 - Wget

wget安装更新

mac install wget

wget下载

wget 下载网页

wget 403错误解决