如何在 WMI 查询中使用 LIKE 运算符?
How to use LIKE operator in WMI queries?
我尝试通过 WMI 获取有关 DHCP 租约的信息,因此我使用此代码:gwmi -ComputerName dhcp -query "select DHCPLeaseExpires, ipaddress from Win32_NetworkAdapterConfiguration"
,但我想让条件更精确。我想过滤其中包含特定 IP 地址的所有行。
例如,我有这个输出:
DHCPLeaseExpires :
IPAddress :
PSComputerName :
DHCPLeaseExpires : 20200603123623.000000+120
IPAddress : {172.21.0.100}
PSComputerName :
DHCPLeaseExpires : 20200603123623.000000+120
IPAddress : {10.10.10.10, fe80::cc09:dfe8:d8b8:99f8}
PSComputerName :
如何使用 LIKE 运算符过滤除 10.10.10.10 以外的所有条目?
试过这个:gwmi -ComputerName dhcp -query "select DHCPLeaseExpires, ipaddress from Win32_NetworkAdapterConfiguration where IPAddress like '%10%'"
但出现 InvalidArgument 错误。也试过"%10%"
、\"%10%\"
等
IP 地址是一个数组。
因此您可以将 Where-Object
与 -contains
或 -notcontains
一起使用
比如像这样:
gwmi -ComputerName dhcp -query "select DHCPLeaseExpires, ipaddress from Win32_NetworkAdapterConfiguration" |
Where-Object IPAddress -contains 10.10.10.10
我尝试通过 WMI 获取有关 DHCP 租约的信息,因此我使用此代码:gwmi -ComputerName dhcp -query "select DHCPLeaseExpires, ipaddress from Win32_NetworkAdapterConfiguration"
,但我想让条件更精确。我想过滤其中包含特定 IP 地址的所有行。
例如,我有这个输出:
DHCPLeaseExpires :
IPAddress :
PSComputerName :
DHCPLeaseExpires : 20200603123623.000000+120
IPAddress : {172.21.0.100}
PSComputerName :
DHCPLeaseExpires : 20200603123623.000000+120
IPAddress : {10.10.10.10, fe80::cc09:dfe8:d8b8:99f8}
PSComputerName :
如何使用 LIKE 运算符过滤除 10.10.10.10 以外的所有条目?
试过这个:gwmi -ComputerName dhcp -query "select DHCPLeaseExpires, ipaddress from Win32_NetworkAdapterConfiguration where IPAddress like '%10%'"
但出现 InvalidArgument 错误。也试过"%10%"
、\"%10%\"
等
IP 地址是一个数组。
因此您可以将 Where-Object
与 -contains
或 -notcontains
比如像这样:
gwmi -ComputerName dhcp -query "select DHCPLeaseExpires, ipaddress from Win32_NetworkAdapterConfiguration" |
Where-Object IPAddress -contains 10.10.10.10