在没有 OutFile 的情况下调用 WebRequest?
Invoke-WebRequest without OutFile?
我在 Powershell 中使用 Invoke-WebRequest 下载了一个文件,但没有使用 -OutFile
参数,并且根据文档 here,该文件应该最终位于我所在的目录中. 然而,什么都没有。响应正常,未显示任何错误。
那个文件可能发生了什么事?我是否误解了 Invoke-WebRequest 在没有 Out 参数的情况下应该如何工作?
谢谢!
注意:我知道我可以使用参数轻松下载文件,但它非常大,我想确保它不会在我不需要的地方堵塞磁盘 space
来自linked docs:
By default, Invoke-WebRequest
returns the results to the pipeline.
也就是说,在没有-OutFile
的情况下没有文件被创建。
(如果您不捕获或重定向输出,它将打印到主机(控制台)。)
正如 techguy1029 在评论中指出的那样,只有当您 do 使用
-OutFile
但指定一个仅仅是文件 name 而不是 path.
顺便说一句:流水线输出是 (a) 类型(派生自)WebResponseObject
的 r 响应对象 ,而只有响应的 body(相当于属性值.Content
)用-OutFile
.
保存
让我们谈谈 Microsoft 文档对 Invoke-WebRequest
的看法
"
-OutFile : Specifies the output file for which this cmdlet saves the response body. Enter a path and file name. If you omit the path, the
default is the current location. "
此处的关键词是如果省略 路径 它将使用当前路径。
-OutFile 是 String
类型的参数
保存到当前路径的用法是
Invoke-webrequest "http://Test.com/test.pdf" -OutFile "Test.pdf"
否则有一个自定义路径
Invoke-webrequest "http://Test.com/test.pdf" -OutFile "C:\Test\Test.Pdf"
我在 Powershell 中使用 Invoke-WebRequest 下载了一个文件,但没有使用 -OutFile
参数,并且根据文档 here,该文件应该最终位于我所在的目录中. 然而,什么都没有。响应正常,未显示任何错误。
那个文件可能发生了什么事?我是否误解了 Invoke-WebRequest 在没有 Out 参数的情况下应该如何工作?
谢谢!
注意:我知道我可以使用参数轻松下载文件,但它非常大,我想确保它不会在我不需要的地方堵塞磁盘 space
来自linked docs:
By default,
Invoke-WebRequest
returns the results to the pipeline.
也就是说,在没有-OutFile
的情况下没有文件被创建。
(如果您不捕获或重定向输出,它将打印到主机(控制台)。)
正如 techguy1029 在评论中指出的那样,只有当您 do 使用 -OutFile
但指定一个仅仅是文件 name 而不是 path.
顺便说一句:流水线输出是 (a) 类型(派生自)WebResponseObject
的 r 响应对象 ,而只有响应的 body(相当于属性值.Content
)用-OutFile
.
让我们谈谈 Microsoft 文档对 Invoke-WebRequest
的看法" -OutFile : Specifies the output file for which this cmdlet saves the response body. Enter a path and file name. If you omit the path, the default is the current location. "
此处的关键词是如果省略 路径 它将使用当前路径。
-OutFile 是 String
类型的参数保存到当前路径的用法是
Invoke-webrequest "http://Test.com/test.pdf" -OutFile "Test.pdf"
否则有一个自定义路径
Invoke-webrequest "http://Test.com/test.pdf" -OutFile "C:\Test\Test.Pdf"