Cur*_*sM3 6 wget http curl https
目的:通过命令行直接下载官方Win10_1909 iso到linux
来源:https : //www.microsoft.com/en-in/software-download/windows10ISO
选择版本和语言后得到如下64位链接,24小时有效
这通过任何 gui 浏览器或任何平台都可以正常工作,但我们需要在 linux box 中使用它
如何仅通过命令行完成此操作?
小智 9
这是被禁止的,因为 url 中存在由 shell 解释的特殊字符。有例如“?” 和 '&'。现在看一下您的示例网址:
curl --location --remote-name https://software-download.microsoft.com/pr/Win10_1909_English_x64.iso?t=77395428-650e-4e5c-8bcc-97abca347eaa&e=1583937294&h=2b05fad63d3a6e2a0c4a20cb49f34e7c
这会:
curl --location --remote-name https://software-download.microsoft.com/pr/Win10_1909_English_x64.iso?t=77395428-650e-4e5c-8bcc-97abca347eaa
如何修复它?- 简单,只需在 url 两边添加单引号即可:
卷曲 --location --remote-name 'https://software-download.microsoft.com/pr/Win10_1909_English_x64.iso?t=77395428-650e-4e5c-8bcc-97abca347eaa&e=1583937294&h=2b05fad63d3a6e2a0c4a20cb49f34e7c'
小智 3
我终于找到了解决方案,Firefox 中不需要扩展。
获取收到的 URL 后,在 Firefox 中打开一个新选项卡并打开开发人员工具 (F12)。切换到网络选项卡并输入下载 URL。当提示您下载时点击取消。
现在 Network 下会有一个 GET 请求;右键单击它并选择Copy > Copy as cURL
。将这个巨大的字符串粘贴到您的终端中并添加-o [/path/filename]
以实际将文件保存在某处,而不是将其转储到 STDOUT。就是这样!
在基于 Chromium 的浏览器中,在 Microsoft 下载页面上创建“32 位下载”和“64 位下载按钮”后。打开开发人员工具,然后切换到“网络”选项卡(它应该为空)。单击 32 或 64 位下载按钮。它应该会弹出一个另存为对话框,将其取消。右键单击网络选项卡中列出的新 url,复制->复制为 Curl
然后将其粘贴到终端窗口中,并附加值-o [/path/filename]
。(例如-o Win10_20H2_v2_English.iso
)它应该开始下载。