Get-CimAssociatedInstance
通过关联检索连接到特定 CIM 实例的 CIM 实例。
语法
Get-CimAssociatedInstance
[[-Association] <String>]
[-ResultClassName <String>]
[-InputObject] <CimInstance>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-ResourceUri <Uri>]
[-ComputerName <String[]>]
[-KeyOnly]
[<CommonParameters>]
Get-CimAssociatedInstance
[[-Association] <String>]
[-ResultClassName <String>]
[-InputObject] <CimInstance>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-ResourceUri <Uri>]
-CimSession <CimSession[]>
[-KeyOnly]
[<CommonParameters>]
说明
此 cmdlet 仅在 Windows 平台上可用。
Get-CimAssociatedInstance
cmdlet 通过关联检索连接到特定 CIM 实例(称为源实例)的 CIM 实例。
在关联中,每个 CIM 实例都有一个命名角色,同一 CIM 实例可以参与不同角色的关联。
如果未指定 InputObject 参数,则 cmdlet 通过以下方式之一工作:
- 如果既未指定 ComputerName 参数,也没有指定 CimSession 参数,则此 cmdlet 使用组件对象模型 (COM) 会话在本地 Windows Management Instrumentation (WMI) 上运行。
- 如果指定了 ComputerName 参数或 CimSession 参数,则此 cmdlet 适用于由 ComputerName 参数或 CimSession 参数指定的 CIM 服务器。
示例
示例 1:获取特定实例的所有关联实例
$disk = Get-CimInstance -ClassName Win32_LogicalDisk -KeyOnly
Get-CimAssociatedInstance -InputObject $disk[1]
此命令集检索名为Win32_LogicalDisk的类的实例,并使用 Get-CimInstance
cmdlet 将信息存储在名为 $disk
的变量中。 然后,变量中的第一个逻辑磁盘实例用作 Get-CimAssociatedInstance
cmdlet 的输入对象,以获取指定 CIM 实例的所有关联的 CIM 实例。
示例 2:获取特定类型的所有关联实例
$disk = Get-CimInstance -ClassName Win32_LogicalDisk -KeyOnly
Get-CimAssociatedInstance -InputObject $disk[1] -ResultClass Win32_DiskPartition
这组命令检索 Win32_LogicalDisk 类的所有实例,并将其存储在名为 $disk
的变量中。 然后,变量中的第一个逻辑磁盘实例用作 Get-CimAssociatedInstance
cmdlet 的输入对象,以获取通过指定关联类关联的所有关联实例 Win32_DiskPartition。
示例 3:通过特定类的限定符获取所有关联的实例
$s = Get-CimInstance -Query "Select * from Win32_Service where name like 'Winmgmt'"
Get-CimClass -ClassName *Service* -Qualifier "Association"
$c.CimClasName
Win32_LoadOrderGroupServiceDependencies
Win32_DependentService
Win32_SystemServices
Win32_LoadOrderGroupServiceMembers
Win32_ServiceSpecificationService
Get-CimAssociatedInstance -InputObject $s -Association Win32_DependentService
这组命令检索依赖于 WMI 服务的服务,并将其存储在名为 $s
的变量中。 通过使用 Get-CimClass
cmdlet 检索 Win32_DependentService 的关联类名称,方法是将 关联 指定为限定符,然后将$s传递给 Get-CimAssociatedInstance
cmdlet 以获取检索到的关联类的所有关联实例。
参数
-Association
指定关联类的名称。 如果未指定此参数,cmdlet 将返回任何类型的所有现有关联对象。
例如,如果类 A 通过两个关联(AB1 和 AB2)与类 B 关联,则此参数可用于指定关联类型(AB1 或 AB2)。
类型: | String |
Position: | 1 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-CimSession
使用指定的 CIM 会话运行命令。 输入包含 CIM 会话的变量,或创建或获取 CIM 会话的命令,例如 New-CimSession
或 Get-CimSession
。 有关详细信息,请参阅 about_CimSession。
类型: | CimSession[] |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-ComputerName
指定要在其中运行 CIM 操作的计算机的名称。 可以指定完全限定的域名(FQDN)或 NetBIOS 名称。
如果指定此参数,cmdlet 将使用 WsMan 协议创建到指定计算机的临时会话。
如果未指定此参数,cmdlet 将使用组件对象模型(COM)在本地计算机上执行该操作。
如果在同一台计算机上执行了多个操作,则使用 CIM 会话进行连接可提供更好的性能。
类型: | String[] |
别名: | CN, ServerName |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-InputObject
指定此 cmdlet 的输入。 可以使用此参数,也可以通过管道将输入传递给此 cmdlet。
InputObject 参数不会枚举集合。 如果传递集合,则会引发错误。 使用集合时,通过管道传递输入来枚举值。
类型: | CimInstance |
别名: | CimInstance |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-KeyOnly
返回仅填充键属性的对象。 这减少了通过网络传输的数据量。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Namespace
指定 CIM 操作的命名空间。 默认命名空间为 root/cimv2。
注意
可以使用选项卡完成浏览命名空间列表,因为 PowerShell 从本地 WMI 服务器获取命名空间列表以提供命名空间列表。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-OperationTimeoutSec
指定 cmdlet 等待计算机响应的时间量。 默认情况下,此参数的值为 0,这意味着 cmdlet 使用服务器的默认超时值。
如果 OperationTimeoutSec 参数设置为小于可靠连接重试超时 3 分钟的值,则超过 OperationTimeoutSec 参数的值的网络故障不可恢复,因为服务器上的操作在客户端重新连接之前超时。
类型: | UInt32 |
别名: | OT |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-ResourceUri
指定资源类或实例的资源统一资源标识符(URI)。 URI 用于标识计算机上的特定资源类型,例如磁盘或进程。
URI 由前缀和资源路径组成。 例如:
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
默认情况下,如果未指定此参数,则使用 DMTF 标准资源 URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
,并将类名称追加到其中。
ResourceURI 只能与使用 WSMan 协议创建的 CIM 会话一起使用,或者指定使用 WSMan 创建 CIM 会话的 ComputerName 参数时。 如果指定此参数而不指定 ComputerName 参数,或者指定使用 DCOM 协议创建的 CIM 会话,则会收到错误,因为 DCOM 协议不支持 ResourceURI 参数。
如果同时指定了 ResourceUri 参数和 Filter 参数,则忽略 Filter 参数。
类型: | Uri |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ResultClassName
指定关联实例的类名。 CIM 实例可以与一个或多个 CIM 实例相关联。 如果未指定结果类名称,将返回所有关联的 CIM 实例。
默认情况下,此参数的值为 null,并返回所有关联的 CIM 实例。
可以筛选关联结果以匹配特定的类名。 筛选发生在服务器上。 如果未指定此参数,Get-CIMAssociatedInstance
将返回所有现有关联。 例如,如果类 A 与类 B、C 和 D 相关联,则可以使用此参数将输出限制为特定类型(B、C 或 D)。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
None
不能通过管道将对象传递给此 cmdlet。
输出
此 cmdlet 返回 CIM 实例对象。
备注
PowerShell 包含以下“”别名:
- 窗户:
gcai
此 cmdlet 仅在 Windows 平台上可用。