Share via


Get-CimAssociatedInstance

Recupera le istanze CIM connesse a un'istanza CIM specifica da un'associazione.

Sintassi

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

Descrizione

Questo cmdlet è disponibile solo nella piattaforma Windows.

Il Get-CimAssociatedInstance cmdlet recupera le istanze CIM connesse a un'istanza CIM specifica, denominata istanza di origine, da un'associazione.

In un'associazione ogni istanza CIM ha un ruolo denominato e la stessa istanza CIM può partecipare a un'associazione in ruoli diversi.

Se il parametro InputObject non viene specificato, il cmdlet funziona in uno dei modi seguenti:

  • Se non viene specificato né il parametro ComputerName né il parametro CimSession , questo cmdlet funziona in Strumentazione gestione Windows locale (WMI) usando una sessione COM (Component Object Model).
  • Se viene specificato il parametro ComputerName o il parametro CimSession, questo cmdlet funziona sul server CIM specificato dal parametro ComputerName o dal parametro CimSession.

Esempio

Esempio 1: Ottenere tutte le istanze associate di un'istanza specifica

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

Questo set di comandi recupera le istanze della classe denominata Win32_LogicalDisk e archivia le informazioni in una variabile denominata $disk usando il Get-CimInstance cmdlet . La prima istanza del disco logico nella variabile viene quindi usata come oggetto di input per il Get-CimAssociatedInstance cmdlet per ottenere tutte le istanze CIM associate dell'istanza CIM specificata.

Esempio 2: Ottenere tutte le istanze associate di un tipo specifico

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

Questo set di comandi recupera tutte le istanze della classe Win32_LogicalDisk e le archivia in una variabile denominata $disk. La prima istanza del disco logico nella variabile viene quindi usata come oggetto di input per il Get-CimAssociatedInstance cmdlet per ottenere tutte le istanze associate associate tramite la classe di associazione specificata Win32_DiskPartition.

Esempio 3: Ottenere tutte le istanze associate tramite qualificatore di una classe specifica

$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

Questo set di comandi recupera i servizi che dipendono dal servizio WMI e li archivia in una variabile denominata $s. Il nome della classe di associazione per il Win32_DependentService viene recuperato usando il Get-CimClass cmdlet specificando Association come qualificatore e quindi viene passato con $s al Get-CimAssociatedInstance cmdlet per ottenere tutte le istanze associate della classe di associazione recuperata.

Parametri

-Association

Specifica il nome della classe di associazione. Se non si specifica questo parametro, il cmdlet restituisce tutti gli oggetti associazione esistenti di qualsiasi tipo.

Ad esempio, se la classe A è associata alla classe B tramite due associazioni, AB1 e AB2, questo parametro può essere usato per specificare il tipo di associazione, AB1 o AB2.

Type:String
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-CimSession

Esegue il comando usando la sessione CIM specificata. Immettere una variabile contenente la sessione CIM o un comando che crea o ottiene la sessione CIM, ad esempio New-CimSession o Get-CimSession. Per altre informazioni, vedere about_CimSession.

Type:CimSession[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ComputerName

Specifica il nome del computer in cui si desidera eseguire l'operazione CIM. È possibile specificare un nome di dominio completo (FQDN) o un nome NetBIOS.

Se si specifica questo parametro, il cmdlet crea una sessione temporanea nel computer specificato usando il protocollo WsMan.

Se non si specifica questo parametro, il cmdlet esegue l'operazione nel computer locale usando Component Object Model (COM).

Se vengono eseguite più operazioni nello stesso computer, la connessione tramite una sessione CIM offre prestazioni migliori.

Type:String[]
Aliases:CN, ServerName
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Specifica l'input per questo cmdlet. È possibile usare questo parametro oppure inviare tramite pipe l'input a questo cmdlet.

Il parametro InputObject non enumera le raccolte. Se viene passata una raccolta, viene generato un errore. Quando si utilizzano raccolte, inviare tramite pipe l'input per enumerare i valori.

Type:CimInstance
Aliases:CimInstance
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-KeyOnly

Restituisce oggetti con solo proprietà chiave popolate. In questo modo si riduce la quantità di dati trasferiti in rete.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Namespace

Specifica lo spazio dei nomi per l'operazione CIM. Lo spazio dei nomi predefinito è root/cimv2.

Nota

È possibile usare il completamento della scheda per esplorare l'elenco degli spazi dei nomi, perché PowerShell ottiene un elenco di spazi dei nomi dal server WMI locale per fornire l'elenco degli spazi dei nomi.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-OperationTimeoutSec

Specifica la quantità di tempo in cui il cmdlet attende una risposta dal computer. Per impostazione predefinita, il valore di questo parametro è 0, il che significa che il cmdlet usa il valore di timeout predefinito per il server.

Se il parametro OperationTimeoutSec è impostato su un valore inferiore al timeout di tentativo di connessione affidabile di 3 minuti, gli errori di rete che durano più del valore del parametro OperationTimeoutSec non sono recuperabili, perché l'operazione sul server scade prima che il client possa riconnettersi.

Type:UInt32
Aliases:OT
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ResourceUri

Specifica l'URI (Uniform Resource Identifier) della classe di risorse o dell'istanza di risorsa. L'URI viene usato per identificare un tipo specifico di risorsa, ad esempio i dischi o i processi, in un computer specifico.

Un URI è costituito da un prefisso e un percorso di una risorsa. Ad esempio:

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

Per impostazione predefinita, se non si specifica questo parametro, viene usato l'URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ della risorsa standard DMTF e il nome della classe viene aggiunto.

ResourceURI può essere usato solo con le sessioni CIM create usando il protocollo WSMan o quando si specifica il parametro ComputerName , che crea una sessione CIM usando WSMan. Se si specifica questo parametro senza specificare il parametro ComputerName o se si specifica una sessione CIM creata usando il protocollo DCOM, viene visualizzato un errore perché il protocollo DCOM non supporta il parametro ResourceURI .

Se vengono specificati sia il parametro ResourceUri che il parametro Filter , il parametro Filter viene ignorato.

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResultClassName

Specifica il nome della classe delle istanze associate. Un'istanza CIM può essere associata a una o più istanze CIM. Se non si specifica il nome della classe risultato, vengono restituite tutte le istanze CIM associate.

Per impostazione predefinita, il valore di questo parametro è Null e vengono restituite tutte le istanze CIM associate.

È possibile filtrare i risultati dell'associazione in modo che corrispondano a un nome di classe specifico. Il filtro viene eseguito nel server. Se questo parametro non viene specificato, Get-CIMAssociatedInstance restituisce tutte le associazioni esistenti. Ad esempio, se la classe A è associata alle classi B, C e D, questo parametro può essere usato per limitare l'output a un tipo specifico (B, C o D).

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

None

Non è possibile inviare tramite pipe oggetti a questo cmdlet.

Output

CimInstance

Questo cmdlet restituisce un oggetto istanza CIM.

Note

PowerShell include gli alias seguenti per '':

  • Windows:
    • gcai

Questo cmdlet è disponibile solo nelle piattaforme Windows.