PowerShell正则表达式替换选择内

优酷

我在互联网上找到了这段代码,它声称[,],{,}从 IP 地址字段中删除所有字符。但是,它不起作用(在 PowerShell 5.1 上)。我非常喜欢这个概念,并想使用这个的工作版本:

get-wmiobject win32_networkadapterconfiguration | where {$_.IPAddress -ne $Null} | select @{label="IP address";Expression={$_.IPAddress -replace '[{}]',''}}, MACAddress
  • 我怎样才能让它工作,即[,],{,}从 IPAddress 字段中删除?
  • 此外,我如何拆分地址,使 IPv4 在一列中,而 IPv6 地址在另一列中?

您的 IP 地址列表实际上是数组,这 ( {<item1>, <item2>, <itemX>}) 就是数组在 PowerShell中的显示方式。换句话说,你可以这样做:

Expression={"$($_.IPAddress)"}

要将 IP4 地址与 IP6 地址分开,您可以执行以下操作:

get-wmiobject win32_networkadapterconfiguration |
    Where-Object {$_.IPAddress -ne $Null} |
        Select-Object @{label="IP4 address";Expression={"$($_.IPAddress -like '*.*')"}},
                      @{label="IP6 address";Expression={"$($_.IPAddress -like '*:*')"}},
                      MACAddress

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章