【发布时间】:2020-01-21 00:15:59
【问题描述】:
要在 Powershell 中测试此代码,您首先需要一个阻止多个 IP 地址的防火墙规则。我的看起来像这样:
我坚持的命令是:
Get-NetFirewallRule -DisplayName "Blocked by Cyberarms Intrusion Detection_BlockAttacker_AllPorts" | Get-NetFirewallAddressFilter | Select RemoteAddress
我的输出是:
RemoteAddress
-------------
{5.101.64.77, 5.188.206.166, 45.141.87.2, 45.141.87.10...}
这似乎是正确的,但我不知道如何直接引用 IP 地址的数组(这是花括号所表示的吗?)。
我想将列表转储到一个文本文件中,每行有一个 IP,以便与其他列表进行比较。
【问题讨论】:
-
Select-Object -ExpandProperty RemoteAddress -
是的,在这种情况下,花括号是数组的显示表示; @Olaf 的解决方案是正确的;有关详细信息和替代方法,请参阅链接的问题。
-
注意:接受的答案解决了问题的转储到文本文件部分,而链接的帖子解决了如何从
Get-NetFirewallRule的输出中提取远程地址数组,其中上面奥拉夫的评论简明扼要地总结了。
标签: arrays powershell object collections