因此,我目前正在使用windows 10 powershell上的wget命令下载各种文件。但是,在测试此命令时,文件实际上并不下载。
例如,假设我想下载一个图像,比如https://picsum.photos/200,我将使用以下命令:
PS C:\Users\myname\Desktop> wget https://picsum.photos/200
它返回一个明显成功的结果:
StatusCode : 200
StatusDescription : OK
Content : {255, 216, 255, 224...}
RawContent : HTTP/1.1 200 OK
Access-Control-Expose-Headers: Content-Length
Content-Disposition: inline;filename=""
Vary: Origin
Access-Control-Allow-Origin: *
X-Content-Type-Options: nosniff
X-XSS-Protection...
Headers : {[Access-Control-Expose-Headers, Content-Length], [Content-Disposition, inline;filename=""],
[Vary, Origin], [Access-Control-Allow-Origin, *]...}
RawContentLength : 31273一旦此过程完成,我就不会在桌面上看到任何新的文件。
但是,此代码确实有效:
wget https://picsum.photos/200 -O image.jpg那是怎么回事?为什么wget不单独下载该文件?
发布于 2017-04-19 16:30:14
wget的Powershell实现不是wget。因此,它的行为不像UNIX/Linux实用程序wget。
作为指出的user4556274,Powershell使用wget和curl作为自己的Invoke-WebRequest的别名。
看看这个(或者在Powershell下运行Get-Help wget ),可以看到-O [filename]标志是-Output [filename]的一个可接受的缩写,而Invoke-WebRequest [URI]实际上返回一个表示网页的对象,而不是从URL的basename中写入一个文件。
因此,这将返回"nothing“,除非您将其赋值给一个变量,或者将其传递给另一个命令:
wget http://example.net/path/to/page.html但这提供了一个“如预期”的网页:
wget http://example.net/path/to/page.html -O page.htmlhttps://unix.stackexchange.com/questions/359972
复制相似问题