0

我的目标是通过给定的过滤器列出所有可用的防火墙规则,并且对 Powershell 来说是全新的。

观察到一个奇怪的行为,这让我问是否有一些我不知道的隐藏的东西。我可能会使用 Pipes 来完成同样的工作,但我有兴趣了解是否存在这样的原因。

Get-NetFirewallRule -DisplayGroup n*

按预期运行

Get-NetFirewallRule -DisplayName n*

按预期运行

但是,当我添加/组合 -Enabled True 时,DisplayName 正在生成这样的错误消息,其中 DisplayGroup 正在生成结果。

无法使用指定的命名参数解析参数集。

  • Get-NetFirewallRule -DisplayName n* -Enabled True
Get-NetFirewallRule -Enabled True | ? DisplayName -like nsc*

正在工作中

Windows 10 机器上的 PS 版本“5.1.177”。

4

1 回答 1

0

这应该有效:

Get-NetFirewallRule | ? {($_.DisplayName -like "nsc*") -and ($_.Enabled -eq $true)}
于 2021-06-01T23:13:41.043 回答