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 平台上可用。
cmdlet Get-CimAssociatedInstance
通过关联检索连接到特定 CIM 实例(称为源实例)的 CIM 实例。
在关联中,每个 CIM 实例都有一个命名角色,同一 CIM 实例可以参与不同角色的关联。
如果未指定 InputObject 参数,则 cmdlet 通过以下方式之一工作:
- 如果未指定 ComputerName 参数和 CimSession 参数,则此 cmdlet 适用于本地 Windows Management Instrumentation (WMI) ,使用组件对象模型 (COM) 会话。
- 如果指定 了 ComputerName 参数或 CimSession 参数,则此 cmdlet 适用于 由 ComputerName 参数或 CimSession 参数指定的 CIM 服务器。
示例
示例 1:获取特定实例的所有关联实例
$disk = Get-CimInstance -ClassName Win32_LogicalDisk -KeyOnly
Get-CimAssociatedInstance -InputObject $disk[1]
这组命令检索名为 Win32_LogicalDisk 类的实例,并使用 cmdlet 将信息存储在名为 $disk
的 Get-CimInstance
变量中。 然后,变量中的第一个逻辑磁盘实例用作 cmdlet 的 Get-CimAssociatedInstance
输入对象,以获取指定 CIM 实例的所有关联 CIM 实例。
示例 2:获取特定类型的所有关联实例
$disk = Get-CimInstance -ClassName Win32_LogicalDisk -KeyOnly
Get-CimAssociatedInstance -InputObject $disk[1] -ResultClass Win32_DiskPartition
这组命令检索 Win32_LogicalDisk 类的所有实例,并将其存储在名为 的 $disk
变量中。 然后,变量中的第一个逻辑磁盘实例用作 cmdlet 的 Get-CimAssociatedInstance
输入对象,以获取通过指定的关联类 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
变量中。 使用 cmdlet 检索Get-CimClass
Win32_DependentService的关联类名,方法是将 Association 指定为限定符,然后使用 $s 传递给 Get-CimAssociatedInstance
cmdlet 以获取检索到的关联类的所有关联实例。
参数
-Association
指定关联类的名称。 如果未指定此参数,cmdlet 将返回任何类型的所有现有关联对象。
例如,如果类 A 通过两个关联(AB1 和 AB2)与类 B 相关联,则此参数可用于指定关联类型(AB1 或 AB2)。
Type: | String |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-CimSession
使用指定的 CIM 会话运行命令。 输入包含 CIM 会话的变量,或用于创建或获取 CIM 会话的命令,例如 New-CimSession
或 Get-CimSession
。 有关详细信息,请参阅 about_CimSession。
Type: | CimSession[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ComputerName
指定要运行 CIM 操作的计算机的名称。 可以 (FQDN) 或 NetBIOS 名称指定完全限定的域名。
如果指定此参数,cmdlet 将使用 WsMan 协议创建与指定计算机的临时会话。
如果未指定此参数,cmdlet 将使用组件对象模型 (COM) 在本地计算机上执行操作。
如果在同一台计算机上执行多个操作,则使用 CIM 会话进行连接可提供更好的性能。
Type: | String[] |
Aliases: | CN, ServerName |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
指定此 cmdlet 的输入。 可以使用此参数,也可以通过管道传送此 cmdlet 的输入。
InputObject 参数不枚举集合。 如果传递集合,则会引发错误。 使用集合时,通过管道传递输入以枚举值。
Type: | CimInstance |
Aliases: | CimInstance |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-KeyOnly
返回仅填充了键属性的对象。 这可以减少通过网络传输的数据量。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Namespace
指定 CIM 操作的命名空间。 默认命名空间为 root/cimv2。
注意
可以使用选项卡补全来浏览命名空间列表,因为 PowerShell 从本地 WMI 服务器获取命名空间列表以提供命名空间列表。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-OperationTimeoutSec
指定 cmdlet 等待计算机响应的时间量。 默认情况下,此参数的值为 0,这意味着 cmdlet 使用服务器的默认超时值。
如果将 OperationTimeoutSec 参数设置为小于 3 分钟可靠连接重试超时的值,则持续超过 OperationTimeoutSec 参数值的网络故障不可恢复,因为服务器上的操作在客户端重新连接之前会超时。
Type: | UInt32 |
Aliases: | OT |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | 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 会话一起使用,或者在指定 ComputerName 参数(使用 WSMan 创建 CIM 会话)时使用。 如果在未指定 ComputerName 参数的情况下指定此参数,或者指定使用 DCOM 协议创建的 CIM 会话,则会收到错误,因为 DCOM 协议不支持 ResourceURI 参数。
如果同时指定 了 ResourceUri 参数和 Filter 参数,则会忽略 Filter 参数。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ResultClassName
指定关联实例的类名。 一个 CIM 实例可以与一个或多个 CIM 实例相关联。 如果未指定结果类名称,则返回所有关联的 CIM 实例。
默认情况下,此参数的值为 null,并返回所有关联的 CIM 实例。
可以筛选关联结果以匹配特定的类名。 筛选发生在服务器上。 如果未指定此参数, Get-CIMAssociatedInstance
则返回所有现有关联。 例如,如果类 A 与类 B、C 和 D 相关联,则此参数可用于将输出限制为特定类型 (B、C 或 D) 。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
输入
None
无法通过管道将对象传递给此 cmdlet。
输出
此 cmdlet 返回 CIM 实例对象。
备注
PowerShell 包括“”的以下别名:
- Windows:
gcai
此 cmdlet 仅在 Windows 平台上可用。