在 powershell 中格式化 WQL 查询
Formatting WQL Query in powershell
我正在尝试使用以下代码在 powershell 中格式化 WQL 查询以仅查找有线以太网适配器
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter "Name LIKE '%Ethernet%' OR '%Gigabit%'" -CN "." | Out-Host
但是我对 SQL/WQL 了解不多,我不确定我是否在 PS 中正确地格式化了 OR 语句,如果有人能指出我正确的方向,我将不胜感激。
谢谢!
Win32_NetworkAdapterConfiguration
没有 Name
属性.
关于您的问题,您可以通过这种方式使用过滤器,在示例中,我使用有效的 属性,例如 ServiceName
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter "ServiceName like '%msloop%' or ServiceName like '%tunnel%'"
此外,您不必为本地计算机提供 ComputerName
参数,这是默认值
这是关于 WQL operators and the WQL WHERE clause
的文档
根据文档,您的方法是正确的,但您的语法不正确。如果您使用的是 PSv3+,我建议您使用 CIM cmdlet,因为 WMI cmdlet 在技术上已被弃用。
Get-CimInstance -Query 'SELECT * FROM Win32_NetworkAdapterConfiguration WHERE Name LIKE "%ethernet%" OR Name LIKE "%gigabit%"'
在你的例子中:
Get-WmiObject -Class 'Win32_NetworkAdapterConfiguration' -Filter 'Name LIKE "%ethernet%" OR Name LIKE "%gigabit%"' -ComputerName '.'
此外,@Avshalom 是正确的,因为您的字段是错误的。您想查看 'Description'.
Get-WmiObject -Filter 'Description LIKE "%ethernet%" OR Description LIKE "%gigabit%"' -Class 'Win32_NetworkAdapterConfiguration' -ComputerName '.'
我正在尝试使用以下代码在 powershell 中格式化 WQL 查询以仅查找有线以太网适配器
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter "Name LIKE '%Ethernet%' OR '%Gigabit%'" -CN "." | Out-Host
但是我对 SQL/WQL 了解不多,我不确定我是否在 PS 中正确地格式化了 OR 语句,如果有人能指出我正确的方向,我将不胜感激。
谢谢!
Win32_NetworkAdapterConfiguration
没有 Name
属性.
关于您的问题,您可以通过这种方式使用过滤器,在示例中,我使用有效的 属性,例如 ServiceName
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter "ServiceName like '%msloop%' or ServiceName like '%tunnel%'"
此外,您不必为本地计算机提供 ComputerName
参数,这是默认值
这是关于 WQL operators and the WQL WHERE clause
的文档根据文档,您的方法是正确的,但您的语法不正确。如果您使用的是 PSv3+,我建议您使用 CIM cmdlet,因为 WMI cmdlet 在技术上已被弃用。
Get-CimInstance -Query 'SELECT * FROM Win32_NetworkAdapterConfiguration WHERE Name LIKE "%ethernet%" OR Name LIKE "%gigabit%"'
在你的例子中:
Get-WmiObject -Class 'Win32_NetworkAdapterConfiguration' -Filter 'Name LIKE "%ethernet%" OR Name LIKE "%gigabit%"' -ComputerName '.'
此外,@Avshalom 是正确的,因为您的字段是错误的。您想查看 'Description'.
Get-WmiObject -Filter 'Description LIKE "%ethernet%" OR Description LIKE "%gigabit%"' -Class 'Win32_NetworkAdapterConfiguration' -ComputerName '.'