7

我正在尝试使用wget不同的本地名称下载文件,并且仅在服务器上的文件较新时才下载。

我认为我可以做的是使用-O选项wget以便能够选择下载文件的名称,如:

wget http://example.com/weird-name -O local-name

并将其与-N不下载任何内容的选项相结合,除非时间戳在服务器上较新。出于以下评论中解释的原因,wget拒绝结合两个标志:

WARNING: timestamping does nothing in combination with -O. See the manual
for details.

关于简洁的解决方法的任何想法?

4

2 回答 2

2

下载它,然后创建一个链接

wget -N example.com/weird-name
ln weird-name local-name

之后您可以运行wget -N,它将按预期工作:

  • 只有更新才下载
  • 如果下载了新文件,则可以从任一名称访问它,而无需花费额外的驱动器空间
于 2014-12-30T05:29:04.483 回答
1

如果在您的情况下可以使用其他工具,我推荐免费的开源工具lwp-mirror

lwp-mirror [-options] <url> <file>

它可以按照您的意愿工作,没有变通方法。

此命令由libwww-perlUbuntu 和 Debian 等其他地方的软件包提供。

请注意,lwp-mirror它不支持所有wget的其他功能。例如,它不允许您像wget这样为请求设置用户代理。

于 2015-05-05T21:12:51.797 回答