强制 wget 使用实际文件名

Chi*_*chi 56 wget

wget在脚本中使用从 Google Docs 下载某些文件时,不会保留文件名。例如:

wget 'http://spreadsheets.google.com/pub?key=pyj6tScZqmEfbZyl0qjbiRQ&output=xls' 
Run Code Online (Sandbox Code Playgroud)

将文件保存为pub?key=pyj6tScZqmEfbZyl0qjbiRQ而不是indicatorhivestimatedprevalence15-49.xls,这是我在浏览器中单击链接时得到的结果。有什么方法可以强制执行这种“类似浏览器”的行为wget

Bru*_*ira 98

wget --content-disposition 'http://spreadsheets.google.com/pub?key=pyj6tScZqmEfbZyl0qjbiRQ&output=xls'
Run Code Online (Sandbox Code Playgroud)

会为你做的伎俩。

它仍然没有完全实现,有时似乎有点错误,所以它不是 中的默认选项wget,使用它需要您自担风险。


Noa*_*nos 6

您可以尝试使用curl下载并保留原始文件名:

curl -OJL ${your_url}
Run Code Online (Sandbox Code Playgroud)
  • -O 表示远程名称
  • -J 用于远程头名称
  • -L 位置

请参阅curl 命令行选项