在多个服务器上复制和运行 .exe 文件的 PowerShell 脚本因 WinRM 客户端错误而失败

问题描述 投票:0回答:0

美好的一天,

我正在尝试运行一个 PowerShell 脚本,该脚本将一个 .exe 文件复制到多个服务器,然后运行它。我使用的脚本是:

$servers = "server1"

$fileToRun = "C:\Users\Oussama\Desktop\013.exe"
foreach ($server in $servers) {
    Write-Host "Copying file to $server..."
    Copy-Item $fileToRun "\\$server\c$\Users\Oussama\Desktop"

    Write-Host "Running file on $server..."
    Invoke-Command -ComputerName $server -ScriptBlock { & "c:\Users\Oussama\Desktop\013.exe" }
}

当我运行这个脚本时,出现以下错误:

正在复制文件到 server1... 在 server1 上运行文件... [server1] 连接到远程服务器 server1 失败,出现以下错误消息:WinRM 客户端无法处理请求。 在以下情况下,可以将默认身份验证与 IP 地址一起使用:传输是 HTTPS 或目的地在 TrustedHosts 中 列表,并提供了明确的凭据。使用 winrm.cmd 配置 TrustedHosts。请注意,TrustedHosts 列表中的计算机可能不是 认证。有关如何设置 TrustedHosts 的更多信息,请运行以下命令:winrm help config。有关详细信息,请参阅 about_Remote_Troubleshooting 帮助主题。

  • CategoryInfo: OpenError: (server1:String) [], PSRemotingTransportException
  • FullyQualifiedErrorId : CannotUseIPAddress,PSSessionStateBroken

我不确定如何解决这个错误。有人可以帮我解决这个问题吗?

我正在尝试运行一个 PowerShell 脚本,该脚本将一个 .exe 文件复制到多个服务器,然后运行它。

powershell sysadmin
© www.soinside.com 2019 - 2024. All rights reserved.