Invoke-WebRequest在ForEach循环中不起作用

时间:2018-09-13 17:51:34

标签: powershell foreach

我正在尝试执行foreach循环以从AWS下拉文件。当我在服务器本身的foreach循环之外运行Invoke-WebRequest -Uri $S3InstallerLoc -OutFile $S3OutFile时,它会将我的测试文件拉低。当我将其粘贴在foreach循环中时,它不会拉下文件。当我尝试从另一台服务器执行此操作时,出现以下错误: Invoke-WebRequest:基础连接已关闭:发送中发生意外错误。

这是整个脚本:

$Servers = "AWS-GPOTEST"
$S3InstallerLoc = "https://s3-us-west-2.amazonaws.com/bucketname/test.txt"
$S3OutFile = "C:\Windows\Temp\Test.txt"

ForEach ($Server in $Servers)

{

Invoke-WebRequest -Uri $S3InstallerLoc -OutFile $S3OutFile

}

1 个答案:

答案 0 :(得分:0)

如果您正在运行Powershell 6.0之前的版本,并且正在WinRM会话中运行该版本,则应使用UseBasicParsing参数。

如:

<input type="number"/>

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest?view=powershell-6

在脚本中使用局部变量:

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_remote_variables?view=powershell-6#using-local-variables