Delen via


Get-CimInstance

Haalt de CIM-exemplaren van een klasse op van een CIM-server.

Syntax

Get-CimInstance
   [-ClassName] <String>
   [-ComputerName <String[]>]
   [-KeyOnly]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-QueryDialect <String>]
   [-Shallow]
   [-Filter <String>]
   [-Property <String[]>]
   [<CommonParameters>]
Get-CimInstance
   -CimSession <CimSession[]>
   -ResourceUri <Uri>
   [-KeyOnly]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-Shallow]
   [-Filter <String>]
   [-Property <String[]>]
   [<CommonParameters>]
Get-CimInstance
   -CimSession <CimSession[]>
   [-ResourceUri <Uri>]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   -Query <String>
   [-QueryDialect <String>]
   [-Shallow]
   [<CommonParameters>]
Get-CimInstance
   -CimSession <CimSession[]>
   [-ClassName] <String>
   [-KeyOnly]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-QueryDialect <String>]
   [-Shallow]
   [-Filter <String>]
   [-Property <String[]>]
   [<CommonParameters>]
Get-CimInstance
   -CimSession <CimSession[]>
   [-ResourceUri <Uri>]
   [-OperationTimeoutSec <UInt32>]
   [-InputObject] <CimInstance>
   [<CommonParameters>]
Get-CimInstance
   [-ResourceUri <Uri>]
   [-ComputerName <String[]>]
   [-OperationTimeoutSec <UInt32>]
   [-InputObject] <CimInstance>
   [<CommonParameters>]
Get-CimInstance
   -ResourceUri <Uri>
   [-ComputerName <String[]>]
   [-KeyOnly]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-Shallow]
   [-Filter <String>]
   [-Property <String[]>]
   [<CommonParameters>]
Get-CimInstance
   [-ResourceUri <Uri>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   -Query <String>
   [-QueryDialect <String>]
   [-Shallow]
   [<CommonParameters>]

Description

Deze cmdlet is alleen beschikbaar op het Windows-platform.

De Get-CimInstance cmdlet haalt de CIM-exemplaren van een klasse op van een CIM-server. U kunt de klassenaam of een query voor deze cmdlet opgeven. Met deze cmdlet worden een of meer CIM-exemplaarobjecten geretourneerd die een momentopname vertegenwoordigen van de CIM-exemplaren die aanwezig zijn op de CIM-server.

Als de parameter InputObject niet is opgegeven, werkt de cmdlet op een van de volgende manieren:

  • Als noch de parameter ComputerName noch de parameter CimSession is opgegeven, werkt deze cmdlet op lokale Windows Management Instrumentation (WMI) met behulp van een COM-sessie (Component Object Model).
  • Als de parameter ComputerName of de parameter CimSession is opgegeven, werkt deze cmdlet tegen de CIM-server die is opgegeven door de parameter ComputerName of de parameter CimSession .

Als de parameter InputObject is opgegeven, werkt de cmdlet op een van de volgende manieren:

  • Als de parameter ComputerName noch de parameter CimSession is opgegeven, gebruikt deze cmdlet de CIM-sessie of computernaam van het invoerobject.
  • Als de parameter ComputerName of de parameter CimSession is opgegeven, gebruikt deze cmdlet de parameterwaarde CimSession of de parameterwaarde ComputerName.

Voorbeelden

Voorbeeld 1: De CIM-exemplaren van een opgegeven klasse ophalen

In dit voorbeeld worden de CIM-exemplaren van een klasse met de naam Win32_Process opgehaald.

Get-CimInstance -ClassName Win32_Process

Voorbeeld 2: Een lijst met naamruimten ophalen van een WMI-server

In dit voorbeeld wordt een lijst met naamruimten opgehaald onder de hoofdnaamruimte op een WMI-server.

Get-CimInstance -Namespace root -ClassName __Namespace

Voorbeeld 3: Exemplaren van een klasse ophalen die zijn gefilterd met behulp van een query

In dit voorbeeld worden alle CIM-exemplaren opgehaald die beginnen met de letter P van een klasse met de naam Win32_Process met behulp van de query die is opgegeven door een queryparameter .

Get-CimInstance -Query "SELECT * from Win32_Process WHERE name LIKE 'P%'"

Voorbeeld 4: Exemplaren van een klasse ophalen die zijn gefilterd met behulp van een klassenaam en een filterexpressie

In dit voorbeeld worden alle CIM-exemplaren opgehaald die beginnen met de letter P van een klasse met de naam Win32_Process met behulp van de filterparameter.

Get-CimInstance -ClassName Win32_Process -Filter "Name like 'P%'"

Voorbeeld 5: De CIM-exemplaren ophalen met alleen sleuteleigenschappen ingevuld

In dit voorbeeld wordt een nieuw CIM-exemplaar gemaakt in het geheugen voor een klasse met de naam Win32_Process met de sleuteleigenschap @{ "Handle"=0 } en wordt deze opgeslagen in een variabele met de naam $x. De variabele wordt doorgegeven als een CIM-exemplaar aan de Get-CimInstance cmdlet om een bepaald exemplaar op te halen.

$x = New-CimInstance -ClassName Win32_Process -Namespace root\cimv2 -Property @{ "Handle"=0 } -Key Handle -ClientOnly
Get-CimInstance -CimInstance $x

Voorbeeld 6: CIM-exemplaren ophalen en opnieuw gebruiken

In dit voorbeeld worden de CIM-exemplaren van een klasse met de naam Win32_Process en opgeslagen in de variabelen $x en $y. De variabele $x wordt vervolgens opgemaakt in een tabel met alleen de eigenschappen Name en KernelModeTime , de tabel die is ingesteld op AutoSize.

$x,$y = Get-CimInstance -ClassName Win32_Process
$x | Format-Table -Property Name,KernelModeTime -AutoSize

Name                 KernelModeTime
----                 --------------
System Idle Process 157238797968750

Voorbeeld 7: CIM-exemplaren ophalen van externe computer

In dit voorbeeld worden de CIM-exemplaren van een klasse met de naam Win32_ComputerSystem opgehaald van de externe computers met de naam Server01 en Server02.

Get-CimInstance -ClassName Win32_ComputerSystem -ComputerName Server01,Server02

Voorbeeld 8: alleen de sleuteleigenschappen ophalen, in plaats van alle eigenschappen

In dit voorbeeld worden alleen de sleuteleigenschappen opgehaald, waardoor het object- en netwerkverkeer kleiner wordt.

$x = Get-CimInstance -Class Win32_Process -KeyOnly
$x | Invoke-CimMethod -MethodName GetOwner

Voorbeeld 9: Alleen een subset eigenschappen ophalen, in plaats van alle eigenschappen

In dit voorbeeld wordt alleen een subset met eigenschappen opgehaald, waardoor het object- en netwerkverkeer kleiner wordt.

Get-CimInstance -Class Win32_Process -Property Name,KernelModeTime
$x = Get-CimInstance -Class Win32_Process -Property Name,KernelModeTime
$x | Invoke-CimMethod -MethodName GetOwner

Het exemplaar dat is opgehaald met de parameter Eigenschap kan worden gebruikt om andere CIM-bewerkingen uit te voeren, bijvoorbeeld Set-CimInstance of Invoke-CimMethod.

Voorbeeld 10: Het CIM-exemplaar ophalen met behulp van CIM-sessie

In dit voorbeeld wordt een CIM-sessie gemaakt op de computers met de naam Server01 en Server02 met behulp van de New-CimSession cmdlet en worden de sessiegegevens opgeslagen in een variabele met de naam $s. De inhoud van de variabele wordt vervolgens doorgegeven Get-CimInstance met behulp van de parameter CimSession om de CIM-exemplaren van de klasse met de naam Win32_ComputerSystem op te halen.

$s = New-CimSession -ComputerName Server01,Server02
Get-CimInstance -ClassName Win32_ComputerSystem -CimSession $s

Parameters

-CimSession

Hiermee geeft u de CIM-sessie die moet worden gebruikt voor deze cmdlet. Voer een variabele in die de CIM-sessie bevat of een opdracht waarmee de CIM-sessie wordt gemaakt of ophaalt, zoals de New-CimSession of Get-CimSession cmdlets. Zie about_CimSession voor meer informatie.

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

-ClassName

Hiermee geeft u de naam van de CIM-klasse waarvoor de CIM-exemplaren moeten worden opgehaald. U kunt tabvoltooiing gebruiken om door de lijst met klassen te bladeren, omdat PowerShell een lijst met klassen ophaalt van de lokale WMI-server om een lijst met klassennamen op te geven.

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

-ComputerName

Hiermee geeft u de computer waarop u de CIM-bewerking wilt uitvoeren. U kunt een FQDN (Fully Qualified Domain Name), een NetBIOS-naam of een IP-adres opgeven. Als u deze parameter niet opgeeft, voert de cmdlet de bewerking uit op de lokale computer met behulp van Component Object Model (COM).

Als u deze parameter opgeeft, maakt de cmdlet een tijdelijke sessie naar de opgegeven computer met behulp van het WsMan-protocol.

Als er meerdere bewerkingen op dezelfde computer worden uitgevoerd, maakt u verbinding met behulp van een CIM-sessie voor betere prestaties.

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

-Filter

Hiermee geeft u een where-component op die moet worden gebruikt als filter. Geef de component op in de WQL - of de CQL-querytaal . Neem het WHERE trefwoord niet op in de waarde van de parameter.

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

-InputObject

Hiermee geeft u een CIM-exemplaarobject te gebruiken als invoer.

Als u al met een CIM-exemplaarobject werkt, kunt u deze parameter gebruiken om het CIM-exemplaarobject door te geven om de meest recente momentopname van de CIM-server op te halen. Wanneer u een CIM-exemplaarobject als invoer doorgeeft, Get-CimInstance retourneert u het object van de server met behulp van een get CIM-bewerking in plaats van een opsomming of querybewerking. Het gebruik van een get CIM-bewerking is efficiƫnter dan het ophalen van alle exemplaren en het filteren ervan.

De parameter InputObject inventariseert geen verzamelingen. Als een verzameling wordt doorgegeven, wordt er een fout gegenereerd. Wanneer u met verzamelingen werkt, kunt u de invoer doorsluisen om de waarden op te sommen.

Als de CIM-klasse de get-bewerking niet implementeert, retourneert het opgeven van de parameter InputObject een fout.

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

-KeyOnly

Geeft aan dat alleen objecten met ingevulde sleuteleigenschappen worden geretourneerd. Als u de KeyOnly-parameter opgeeft, wordt de hoeveelheid gegevens die via het netwerk worden overgedragen, verminderd.

Gebruik de keyOnly-parameter om slechts een klein deel van het object te retourneren, dat kan worden gebruikt voor andere bewerkingen, zoals de Set-CimInstance of Get-CimAssociatedInstance cmdlets.

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

-Namespace

Hiermee geeft u de naamruimte van de CIM-klasse.

De standaardnaamruimte is root/cimv2. U kunt tabvoltooiing gebruiken om door de lijst met naamruimten te bladeren, omdat PowerShell een lijst met naamruimten ophaalt van de lokale WMI-server om de lijst met naamruimten op te geven.

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

-OperationTimeoutSec

Hiermee geeft u de hoeveelheid tijd op die de cmdlet wacht op een reactie van de computer. De waarde van deze parameter is standaard 0, wat betekent dat de cmdlet de standaardtime-outwaarde voor de server gebruikt.

Als de parameter OperationTimeoutSec is ingesteld op een waarde die kleiner is dan de robuuste time-out voor opnieuw proberen van 3 minuten, kunnen netwerkfouten die meer duren dan de waarde van de parameter OperationTimeoutSec niet herstellen, omdat er een time-out optreedt voordat de client opnieuw verbinding kan maken.

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

-Property

Hiermee geeft u een set exemplaareigenschappen op die moeten worden opgehaald. Gebruik deze parameter wanneer u de grootte van het geretourneerde object wilt verkleinen, hetzij in het geheugen of via het netwerk. Het geretourneerde object bevat ook de sleuteleigenschappen, zelfs als u ze niet hebt vermeld met behulp van de parameter Eigenschap . Andere eigenschappen van de klasse zijn aanwezig, maar worden niet ingevuld.

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

-Query

Hiermee geeft u een query die moet worden uitgevoerd op de CIM-server. Als de opgegeven waarde dubbele aanhalingstekens, enkele aanhalingstekens "'of een backslash \bevat, moet u deze tekens escapen door ze te voorzien van het backslash-teken. Als de opgegeven waarde gebruikmaakt van de WQL LIKE-operator , moet u de volgende tekens ontsnappen door deze tussen vierkante haken []te zetten: percentage %, onderstrepingsteken _of vierkante haak [openen.

U kunt geen metagegevensquery gebruiken om een lijst met klassen of een gebeurtenisquery op te halen. Gebruik de Get-CimClass cmdlet om een lijst met klassen op te halen. Gebruik de Register-CimIndicationEvent cmdlet om een gebeurtenisquery op te halen.

U kunt het querydialect opgeven met behulp van de parameter QueryDialect .

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

-QueryDialect

Hiermee geeft u de querytaal op die wordt gebruikt voor de queryparameter. De acceptabele waarden voor deze parameter zijn: WQL of CQL. De standaardwaarde is WQL.

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

-ResourceUri

Hiermee geeft u de resource uniform resource identifier (URI) van de resourceklasse of het exemplaar. De URI wordt gebruikt om een specifiek type resource, zoals schijven of processen, op een computer te identificeren.

Een URI bestaat uit een voorvoegsel en een pad naar een resource. Voorbeeld:

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

Als u deze parameter niet opgeeft, wordt standaard de DMTF-standaardresource-URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ gebruikt en wordt de klassenaam eraan toegevoegd.

ResourceURI kan alleen worden gebruikt met CIM-sessies die zijn gemaakt met het WSMan-protocol of wanneer u de parameter ComputerName opgeeft, waarmee een CIM-sessie wordt gemaakt met behulp van WSMan. Als u deze parameter opgeeft zonder de parameter ComputerName op te geven of als u een CIM-sessie opgeeft die is gemaakt met het DCOM-protocol, krijgt u een foutmelding omdat het DCOM-protocol de parameter ResourceURI niet ondersteunt.

Als zowel de parameter ResourceUri als de filterparameter zijn opgegeven, wordt de filterparameter genegeerd.

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

-Shallow

Geeft aan dat de exemplaren van een klasse worden geretourneerd zonder de exemplaren van onderliggende klassen op te geven. De cmdlet retourneert standaard de exemplaren van een klasse en de onderliggende klassen.

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

Invoerwaarden

CimInstance

U kunt een CIM-exemplaarobject doorsluisen naar deze cmdlet.

Uitvoerwaarden

CimInstance

Met deze cmdlet worden een of meer CIM-exemplaarobjecten geretourneerd die een momentopname van de CIM-exemplaren op de CIM-server vertegenwoordigen.

Notities

PowerShell bevat de volgende aliassen voor Get-CimInstance:

  • Windows:
    • gcim

Deze cmdlet is alleen beschikbaar op Windows-platforms.