如何解决缺少“最后修改”标头的问题?

如何解决缺少“最后修改”标头的问题?

我在跑wget像这样:

wget --mirror --adjust-extension --convert-links --no-cookies http://tshepang.net -o log-main

我收到一堆这样的消息:

Last-modified header missing -- time-stamps turned off.

我想这意味着页面不断被重新下载,即使我在本地有它们。

笔记:我想要这个,这样我就不必每次运行命令镜像时重新下载现有文件。

答案1

您尝试添加-c参数吗?

wget 手册摘录:

-c --继续

从 Wget 1.7 开始,如果您在非空文件上使用 -c,并且发现服务器不支持继续下载,Wget 将拒绝从头开始下载,这将有效地破坏现有内容。如果您确实希望从头开始下载,请删除该文件。

同样从 Wget 1.7 开始,如果您对与服务器上的文件大小相同的文件使用 -c,Wget 将拒绝下载该文件并打印一条解释性消息。当服务器上的文件比本地文件小时也会发生同样的情况(可能是因为自上次下载尝试以来它在服务器上发生了更改)——因为“继续”没有意义,因此不会发生下载。

另一方面,在使用 -c 时,服务器上比本地大的任何文件都将被视为不完整的下载,并且只会下载“(length(remote) - length(local))”字节并将其附加到本地文件的末尾。在某些情况下,此行为可能是理想的 - 例如,您可以使用 wget -c 仅下载已附加到数据集合或日志文件的新部分。

据我所知,它应该跳过已下载且大小相同的文件。

相关内容