使用powershell和运行这篇文章时,下面的示例将引发一个错误。
示例:
1..5 | ForEach-Object -Parallel { "Hello $_"; sleep 1; } -ThrottleLimit 5
错误:
ForEach-Object : Parameter set cannot be resolved using the specified named parameters.
删除循环的主体并不能解决问题。无论何时使用-Parallel关键字,它都是存在的。
这篇文章是去年写的,这让我觉得powershell中肯定还有这个特性。我是不是漏掉了什么明显的东西?
发布于 2022-02-04 01:30:59
我在Windows脚本编辑器中尝试测试脚本时遇到了这个问题,尽管pwsh --version告诉我它是7.2.0。
正如欧瓦恩·埃索在注释中指出的那样,错误告诉您当前版本的ForEach-Object不支持-Parallel参数。
但是,如果在专用的Powershell 7窗口中打开运行脚本,它应该会执行得很好。
发布于 2022-03-29 02:27:14
正如@Kylaaa所提到的,这是一个powershell版本问题。确保您运行的是pwsh而不是powershell。我刚刚了解到这个区别,虽然我在Powershell 7.2.2窗口中运行命令,但powershell命令运行的是不同的解释器,从而导致错误。
https://stackoverflow.com/questions/62379047
复制相似问题