Windows wget不下载文件,但在浏览器中

时间:2016-12-06 12:49:44

标签: windows batch-file command wget

我正在尝试使用wget(windows命令行端口)下载文件,我收到此错误..

--2016-12-06 12:36:11--  https://download.microsoft.com/download/E/A/E/EAE6F7FC-767A-4038-A954-49B8B05D04EB/ExpressAdv064BIT/SQLEXPRADV_x64_ENU.exe
Resolving download.microsoft.com (download.microsoft.com)... 23.209.210.127
Connecting to download.microsoft.com (download.microsoft.com)|23.209.210.127|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2016-12-06 12:36:12 ERROR 404: Not Found.

使用相同的命令下载其他文件...

这是我尝试过的事情

"%~dp0wget" -c --show-progress --progress=bar:force:noscroll --no-check-certificate "https://download.microsoft.com/download/E/A/E/EAE6F7FC-767A-4038-A954-49B8B05D04EB/ExpressAdv%2064BIT/SQLEXPRADV_x64_ENU.exe" -P C:\Temp

.. ..和

"%~dp0wget" -c --show-progress --progress=bar:force:noscroll --no-check-certificate https://download.microsoft.com/download/E/A/E/EAE6F7FC-767A-4038-A954-49B8B05D04EB/ExpressAdv%2064BIT/SQLEXPRADV_x64_ENU.exe -P C:\Temp

我希望这是一个报价问题来处理链接中的%,但没有运气。我也尝试过单引号,并在%的前面放置以逃避角色。

总是一样的错误。我想知道这个网站上的wget请求是否存在服务器端限制。我可以绕过吗?也许我需要一些其他开关?提前致谢。

1 个答案:

答案 0 :(得分:2)

只需从cmd运行即可运行您的命令,但由于您是在批处理文件中运行此命令,因此需要通过加倍百分号来转义百分号,即:%→{{ 1}}

这给出了:

%%

引用ss64.com

  

许多字符(如\ =())不需要转义   在“引用字符串”中使用,通常这些都是你的字符   可能会在文件名/路径中找到。百分比字符是一个例外   根据这条规则,即使在NTFS%下,它也是一个有效的文件名字符。