Compartilhar via


Get-CimAssociatedInstance

Recupera as instâncias do CIM que estão conectadas a uma instância específica do CIM por uma associação.

Sintaxe

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>]

Description

Esse cmdlet só está disponível na plataforma Windows.

O Get-CimAssociatedInstance cmdlet recupera as instâncias CIM conectadas a uma instância CIM específica, chamada de instância de origem, por uma associação.

Em uma associação, cada instância do CIM tem uma função nomeada e a mesma instância do CIM pode participar de uma associação em diferentes funções.

Se o parâmetro InputObject não for especificado, o cmdlet funcionará de uma das seguintes maneiras:

  • Se nem o parâmetro ComputerName nem o parâmetro CimSession forem especificados, esse cmdlet funcionará na WMI (Instrumentação de Gerenciamento do Windows) local usando uma sessão COM (Component Object Model).
  • Se o parâmetro ComputerName ou o parâmetro CimSession for especificado, esse cmdlet funcionará no servidor CIM especificado pelo parâmetro ComputerName ou pelo parâmetro CimSession.

Exemplos

Exemplo 1: Obter todas as instâncias associadas de uma instância específica

$disk = Get-CimInstance -ClassName Win32_LogicalDisk -KeyOnly
Get-CimAssociatedInstance -InputObject $disk[1]

Esse conjunto de comandos recupera as instâncias da classe chamada Win32_LogicalDisk e armazena as informações em uma variável chamada $disk usando o Get-CimInstance cmdlet. A primeira instância de disco lógico na variável é usada como o objeto de entrada para o Get-CimAssociatedInstance cmdlet obter todas as instâncias CIM associadas da instância CIM especificada.

Exemplo 2: Obter todas as instâncias associadas de um tipo específico

$disk = Get-CimInstance -ClassName Win32_LogicalDisk -KeyOnly
Get-CimAssociatedInstance -InputObject $disk[1] -ResultClass Win32_DiskPartition

Esse conjunto de comandos recupera todas as instâncias da classe Win32_LogicalDisk e as armazena em uma variável chamada $disk. A primeira instância de disco lógico na variável é usada como o objeto de entrada para o Get-CimAssociatedInstance cmdlet obter todas as instâncias associadas por meio da classe de associação especificada Win32_DiskPartition.

Exemplo 3: Obter todas as instâncias associadas por meio do qualificador de uma classe específica

Esse conjunto de comandos recupera os serviços que dependem do serviço Winmgmt e os armazena em uma variável chamada $s. Get-CimAssociatedInstance Obtém as instâncias associadas da classe de associação recuperada.

$s = Get-CimInstance -Query "Select * from Win32_Service where name like 'Winmgmt'"
Get-CimAssociatedInstance -InputObject $s -Association Win32_DependentService

ProcessId Name            StartMode State   Status ExitCode
--------- ----            --------- -----   ------ --------
1716      RpcSs           Auto      Running OK     0
9964      CcmExec         Auto      Running OK     0
0         HgClientService Manual    Stopped OK     1077
0         smstsmgr        Manual    Stopped OK     1077
3396      vmms            Auto      Running OK     0

Parâmetros

-Association

Especifica o nome da classe de associação. Se você não especificar esse parâmetro, o cmdlet retornará todos os objetos de associação existentes de qualquer tipo.

Por exemplo, se a classe A estiver associada à classe B por meio de duas associações, AB1 e AB2, esse parâmetro poderá ser usado para especificar o tipo de associação, AB1 ou AB2.

Tipo:String
Cargo:1
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-CimSession

Executa o comando usando a sessão CIM especificada. Insira uma variável que contenha a sessão CIM ou um comando que crie ou obtenha a sessão CIM, como New-CimSession ou Get-CimSession. Para obter mais informações, consulte about_CimSession.

Tipo:CimSession[]
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-ComputerName

Especifica o nome do computador no qual você deseja executar a operação CIM. Você pode especificar um FQDN (nome de domínio totalmente qualificado) ou um nome NetBIOS.

Se você especificar esse parâmetro, o cmdlet criará uma sessão temporária para o computador especificado usando o protocolo WsMan.

Se você não especificar esse parâmetro, o cmdlet executará a operação no computador local usando o COM (Component Object Model).

Se várias operações estiverem sendo executadas no mesmo computador, a conexão usando uma sessão CIM fornecerá melhor desempenho.

Tipo:String[]
Aliases:CN, ServerName
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-InputObject

Especifica a entrada para esse cmdlet. Você pode usar esse parâmetro ou canalizar a entrada para esse cmdlet.

O parâmetro InputObject não enumera coleções. Se uma coleção for passada, um erro será gerado. Ao trabalhar com coleções, canalize a entrada para enumerar os valores.

Tipo:CimInstance
Aliases:CimInstance
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-KeyOnly

Retorna objetos com apenas propriedades de chave preenchidas. Isso reduz a quantidade de dados transferidos pela rede.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Namespace

Especifica o namespace para a operação CIM. O namespace padrão é root/cimv2.

Observação

Você pode usar o preenchimento de tabulação para procurar a lista de namespaces, pois o PowerShell obtém uma lista de namespaces do servidor WMI local para fornecer a lista de namespaces.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-OperationTimeoutSec

Especifica a quantidade de tempo que o cmdlet aguarda uma resposta do computador. Por padrão, o valor desse parâmetro é 0, o que significa que o cmdlet usa o valor de tempo limite padrão para o servidor.

Se o parâmetro OperationTimeoutSec for definido como um valor menor que o tempo limite de repetição de conexão robusta de 3 minutos, as falhas de rede que durarem mais do que o valor do parâmetro OperationTimeoutSec não serão recuperáveis, pois a operação no servidor atinge o tempo limite antes que o cliente possa se reconectar.

Tipo:UInt32
Aliases:OT
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-ResourceUri

Especifica o URI (Uniform Resource Identifier) do recurso da classe ou instância do recurso. O URI é utilizado para identificar um tipo específico de recurso, como discos ou processos em um computador.

Um URI consiste em um prefixo e um caminho para um recurso. Por exemplo:

  • http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
  • http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings

Por padrão, se você não especificar esse parâmetro, o URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ do recurso padrão DMTF será usado e o nome da classe será acrescentado a ele.

ResourceURI só pode ser usado com sessões CIM criadas usando o protocolo WSMan ou ao especificar o parâmetro ComputerName , que cria uma sessão CIM usando WSMan. Se você especificar esse parâmetro sem especificar o parâmetro ComputerName ou se especificar uma sessão CIM criada usando o protocolo DCOM, receberá um erro, pois o protocolo DCOM não dá suporte ao parâmetro ResourceURI.

Se o parâmetro ResourceUri e o parâmetro Filter forem especificados, o parâmetro Filter será ignorado.

Tipo:Uri
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ResultClassName

Especifica o nome da classe das instâncias associadas. Uma instância CIM pode ser associada a uma ou mais instâncias CIM. Todas as instâncias CIM associadas serão retornadas se você não especificar o nome da classe de resultado.

Por padrão, o valor desse parâmetro é nulo e todas as instâncias CIM associadas são retornadas.

Você pode filtrar os resultados da associação para corresponder a um nome de classe específico. A filtragem acontece no servidor. Se esse parâmetro não for especificado, Get-CIMAssociatedInstance retornará todas as associações existentes. Por exemplo, se a classe A estiver associada às classes B, C e D, esse parâmetro poderá ser usado para restringir a saída a um tipo específico (B, C ou D).

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

None

Você não pode canalizar objetos para esse cmdlet.

Saídas

CimInstance

Esse cmdlet retorna um objeto de instância CIM.

Observações

O PowerShell inclui os seguintes aliases para Get-CimAssociatedInstance:

  • Windows:
    • gcai

Esse cmdlet só está disponível em plataformas Windows.