gpt4 book ai didi

wget - 如何让 wget 以正确的文件名保存

转载 作者:行者123 更新时间:2023-12-03 18:13:00 26 4
gpt4 key购买 nike

当我去ISC时here要下载 BIND,我的浏览器会自动正确保存下载的文件。例如,如果我点击 9.9.4-P2 的下载按钮,它会弹出一个窗口,如果我点击右侧的“BIND 9.9.4-P2 - tar.gz”按钮,浏览器会自动保存下载的文件为“bind-9.9.4-P2.tar.gz”。

但是,我要做的是通过 Linux 上的 wget 下载它。所以我右键单击“BIND 9.9.4-P2 - tar.gz”按钮并复制“https://www.isc.org/downloads/file/bind-9-9-4-p1-tar-gz/?version=tar.gz”链接。

现在,当我发出以下命令时,它会将其另存为“index.html?version=tar.gz”。现在我明白我可以给它 -O 选项并明确指定保存的文件名,但有没有办法让它像我的浏览器那样自动执行此操作?

wget https://www.isc.org/downloads/file/bind-9-9-4-p1-tar-gz/?version=tar.gz

最佳答案

在 HTTP 级别,服务器将文件名信息发送到 Content-Disposition 中的客户端。 HTTP 响应中的 header 字段:

HTTP/1.1 200 OK
[…]
Content-Disposition: attachment; filename="bind-9.9.4-P2.tar.gz";
RFC2183有关 Content-Disposition 的详细信息头字段。 wget根据其联机帮助页,对此功能具有实验性支持:
   --content-disposition
If this is set to on, experimental (not fully-functional) support for
"Content-Disposition" headers is enabled. This can currently result in
extra round-trips to the server for a "HEAD" request, and is known to
suffer from a few bugs, which is why it is not currently enabled by
default.

因此,如果您选择启用它,只需指定 --content-disposition选项。 (您也可以使用 curl 而不是 wget 来完成这项工作,但问题是关于 wget 。)

关于wget - 如何让 wget 以正确的文件名保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21358197/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com