1

目前正在尝试使用 PowerShell 工作流来处理我正在并行执行的一些远程服务器内容。

我没有运气试图让Invoke-Command登录服务器真正工作。它没有抛出错误,但也没有像通常的Write-Host语句那样输出到控制台。没有看到任何可以帮助我浏览旧帖子的东西。

workflow test {
    Param([System.Management.Automation.PSCredential]$cred)

    InlineScript {
        Write-Host $using:cred
        Invoke-Command -Computer "server" -Credential $using:cred  -ScriptBlock { Write-Host "hello world" } }
    }
}

#Calling the function
test $cred
4

1 回答 1

0

write-output 而不是 write-host 的作品。请注意,这也是并行运行的:

invoke-command computer1,computer2,computer3 { 'whatever' } 

顺便说一句,最后你有一个额外的大括号。

另一种方法:

workflow test {
  InlineScript {
    Write-Host 'hello world'
  }
}

test -pscomputername server -pscredential $cred
于 2019-07-22T23:15:07.377 回答