在Powershell中抑制cmdlet输出

在Powershell中抑制cmdlet输出,powershell,Powershell,我正在运行下面的cmdlet,我需要在脚本中使用它 Connect-Pfa2Array -Endpoint 10.10.10.10 -Username pureapiuser -Password $psw -IgnoreCertificateError 我得到下面的输出,我正试图抑制。我只需要cmdlet建立连接。 有没有办法做到这一点?我检查了cmdlet,但没有看到执行静默连接的选项 ArrayName ApiVersion --------- ---------- 10.10

我正在运行下面的cmdlet,我需要在脚本中使用它

Connect-Pfa2Array -Endpoint 10.10.10.10 -Username pureapiuser -Password $psw -IgnoreCertificateError
我得到下面的输出,我正试图抑制。我只需要cmdlet建立连接。 有没有办法做到这一点?我检查了cmdlet,但没有看到执行静默连接的选项

ArrayName    ApiVersion
---------    ----------
10.100.24.50 2.2 

正如Santiago Squarzon提到的,您可以使用以下几个选项:

[void](Connect-Pfa2Array ... )


尝试
| Out Null
$Null
做得很好,尽管并非所有这些方法都是相同的;总的来说,
$null=…
是最好的通用解决方案,而出于性能原因,应该避免使用
|Out null
。@mklement0我喜欢你提到的为了提高效率而不使用管道替代方案,我很难理解为什么PS的新手(包括我自己)当有更经典、更高效的方法做事情时,你会沉迷于随时随地使用管道替代方案:P@SantiagoSquarzon,这是可以理解的,因为管道是一个非常优雅的概念,如果它不带来性能损失那就太好了,但它总是这样(至少与当前实现的一样;可以想象,PowerShell可以在幕后将纯粹基于表达式的管道转换为更高效的结构);相反,管道可以实现内存高效的流式解决方案(除非最终结果完全收集在内存中)。
Connect-Pfa2Array | Out-Null
Connect-Pfa2Array > $null
$null = Connect-Pfa2Array