我正在尝试多线程,结果遇到了这样的情况:http://learn-powershell.net/2015/03/31/introducing-poshrsjob-as-an-alternative-to-powershell-jobs/
尝试使用,但得到错误,无法访问我需要的数据。让我解释一下。我这里有一个非常简单的例子:
@('12.34.56.78')|Start-RSJob -Name {"TEST_$($_)"} -ScriptBlock {
Param($Computername)
Test-Connection -ComputerName $Computername -Quiet
}
get-RSJob|Receive-RSJob这实际上是错误地说computername为null。我在这里放置的任何类型的命令都会出现相同的错误,说明computername is null。如何摆脱它以及如何访问应该返回的布尔值。这将在命令行上返回true或false,但在此脚本中运行时无法访问此值。
最终,这将需要一个IP数组,并且我将需要访问每台机器返回的所有值。我不一定要使用这个高级模块,但需要线程,我认为这是一个很好的选择。这里的任何建议都是值得感谢的。
发布于 2016-01-07 11:13:54
看起来您在我的模块中发现了一个bug,使用Param()在管道中托管传入的数据。
@('12.34.56.78')|Start-RSJob -Name {"TEST_$($_)"} -ScriptBlock {
Test-Connection -ComputerName $_ -Quiet
}
get-RSJob|Receive-RSJob编辑:返回$False的问题是Receive-RSJob中的一个错误($True返回正常)。我也会解决这个问题的。
https://stackoverflow.com/questions/34639565
复制相似问题