Sdílet prostřednictvím


Get-CimInstance

Získá instance CIM třídy ze serveru CIM.

Syntaxe

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

Tato rutina je dostupná jenom na platformě Windows.

Rutina Get-CimInstance získá instance CIM třídy ze serveru CIM. Můžete zadat buď název třídy, nebo dotaz pro tuto rutinu. Tato rutina vrátí jeden nebo více objektů instance CIM představující snímek instancí CIM, které jsou přítomné na serveru CIM.

Pokud není zadaný parametr InputObject, rutina funguje jedním z následujících způsobů:

  • Pokud není zadán parametr ComputerName ani parametr CimSession, tato rutina funguje v místní službě WMI (Windows Management Instrumentation) pomocí relace modelu COM (Component Object Model).
  • Pokud je zadán parametr ComputerName nebo parametr CimSession, tato rutina pracuje se serverem CIM určeným parametrem ComputerName nebo parametrem CimSession.

Pokud je zadaný parametr InputObject, rutina funguje jedním z následujících způsobů:

  • Pokud není zadán parametr ComputerName ani parametr CimSession, použije tato rutina ze vstupního objektu relaci CIM nebo název počítače.
  • Pokud je zadaný parametr ComputerName nebo parametr CimSession, použije tato rutina hodnotu parametru CimSession nebo hodnotu parametru ComputerName.

Příklady

Příklad 1: Získání instancí CIM zadané třídy

Tento příklad načte instance CIM třídy s názvem Win32_Process.

Get-CimInstance -ClassName Win32_Process

Příklad 2: Získání seznamu oborů názvů ze serveru WMI

Tento příklad načte seznam oborů názvů v kořenovém oboru názvů na serveru WMI.

Get-CimInstance -Namespace root -ClassName __Namespace

Příklad 3: Získání instancí třídy filtrované pomocí dotazu

Tento příklad načte všechny instance CIM, které začínají písmenem P třídy s názvem Win32_Process pomocí dotazu určeného parametrem Dotazu .

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

Příklad 4: Získání instancí třídy filtrovaných pomocí názvu třídy a výrazu filtru

Tento příklad načte všechny instance CIM, které začínají písmenem P třídy s názvem Win32_Process pomocí parametru Filter.

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

Příklad 5: Získání instancí CIM s vyplněnými pouze klíčovými vlastnostmi

Tento příklad vytvoří novou instanci CIM v paměti pro třídu s názvem Win32_Process s klíčovou vlastností @{ "Handle"=0 } a uloží ji do proměnné s názvem $x. Proměnná se předá rutině Get-CimInstance jako instance CIM, aby získala určitou instanci.

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

Příklad 6: Načtení instancí CIM a jejich opakované použití

Tento příklad získá instance CIM třídy pojmenované Win32_Process a uloží je do proměnných $x a $y. Proměnná $x se pak naformátuje v tabulce obsahující pouze vlastnosti Name a KernelModeTime , která je nastavená na hodnotu AutoSize.

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

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

Příklad 7: Získání instancí CIM ze vzdáleného počítače

Tento příklad načte instance CIM třídy s názvem Win32_ComputerSystem ze vzdálených počítačů s názvem Server01 a Server02.

Get-CimInstance -ClassName Win32_ComputerSystem -ComputerName Server01,Server02

Příklad 8: Získání pouze vlastností klíče místo všech vlastností

Tento příklad načte pouze klíčové vlastnosti, které zmenšují velikost objektu a síťového provozu.

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

Příklad 9: Získání pouze podmnožina vlastností místo všech vlastností

Tento příklad načte pouze podmnožinu vlastností, což zmenšuje velikost objektu a síťového provozu.

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

Instanci načtenou pomocí parametru Property lze použít k provádění jiných operací CIM, například Set-CimInstance .Invoke-CimMethod

Příklad 10: Získání instance CIM pomocí relace CIM

Tento příklad vytvoří relaci CIM na počítačích s názvem Server01 a Server02 pomocí New-CimSession rutiny a uloží informace o relaci do proměnné s názvem $s. Obsah proměnné se pak předá Get-CimInstance pomocí parametru CimSession , aby se získaly instance CIM třídy s názvem Win32_ComputerSystem.

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

Parametry

-CimSession

Určuje relaci CIM, která se má pro tuto rutinu použít. Zadejte proměnnou obsahující relaci CIM nebo příkaz, který vytvoří nebo získá relaci CIM, například rutinyNew-CimSession.Get-CimSession Další informace najdete v tématu about_CimSession.

Typ:CimSession[]
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-ClassName

Určuje název třídy CIM, pro kterou se mají načíst instance CIM. Pomocí dokončování tabulátoru můžete procházet seznam tříd, protože PowerShell získá seznam tříd z místního serveru WMI a poskytne seznam názvů tříd.

Typ:String
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-ComputerName

Určuje počítač, na kterém chcete spustit operaci CIM. Můžete zadat plně kvalifikovaný název domény (FQDN), název NetBIOS nebo IP adresu. Pokud tento parametr nezadáte, rutina provede operaci na místním počítači pomocí modelu COM (Component Object Model).

Pokud zadáte tento parametr, rutina vytvoří dočasnou relaci k zadanému počítači pomocí protokolu WsMan.

Pokud se na stejném počítači provádí více operací, připojte se pomocí relace CIM pro zajištění lepšího výkonu.

Typ:String[]
Aliasy:CN, ServerName
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Filter

Určuje klauzuli where, která se má použít jako filtr. Zadejte klauzuli v dotazovacím jazyce WQL nebo CQL. Nezahrnujte WHERE klíčové slovo do hodnoty parametru.

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-InputObject

Určuje objekt instance CIM, který se má použít jako vstup.

Pokud už pracujete s objektem instance CIM, můžete pomocí tohoto parametru předat objekt instance CIM, abyste získali nejnovější snímek ze serveru CIM. Když předáte objekt instance CIM jako vstup, Get-CimInstance vrátí objekt ze serveru pomocí operace get CIM místo výčtu nebo operace dotazu. Použití operace get CIM je efektivnější než načtení všech instancí a jejich následné filtrování.

Parametr InputObject nevypíše výčet kolekcí. Pokud je kolekce předána, vyvolá se chyba. Při prácisch

Pokud třída CIM neimplementuje operaci get, zadání inputObject parametru vrátí chybu.

Typ:CimInstance
Aliasy:CimInstance
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-KeyOnly

Označuje, že se vrátí pouze objekty s vyplněnými vlastnostmi klíče. Zadání parametru KeyOnly snižuje objem dat přenášených přes síť.

Pomocí parametru KeyOnly vrátíte pouze malou část objektu, kterou lze použít pro jiné operace, jako Set-CimInstance jsou rutiny nebo Get-CimAssociatedInstance rutiny.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Namespace

Určuje obor názvů třídy CIM.

Výchozí obor názvů je root/cimv2. Pomocí dokončování tabulátoru můžete procházet seznam oborů názvů, protože PowerShell získá seznam oborů názvů z místního serveru WMI a poskytne seznam oborů názvů.

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-OperationTimeoutSec

Určuje dobu, po kterou rutina čeká na odpověď z počítače. Ve výchozím nastavení je hodnota tohoto parametru 0, což znamená, že rutina používá výchozí hodnotu časového limitu pro server.

Pokud je parametr OperationTimeoutSec nastaven na hodnotu menší než robustní časový limit opakování připojení 3 minuty, chyby sítě, které trvaly více než hodnota parametru OperationTimeoutSec, se nedají obnovit, protože operace na serveru vyprší, než se klient může znovu připojit.

Typ:UInt32
Aliasy:OT
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Property

Určuje sadu vlastností instance, které se mají načíst. Tento parametr použijte, pokud potřebujete zmenšit velikost vráceného objektu v paměti nebo přes síť. Vrácený objekt obsahuje také vlastnosti klíče, i když jste je nezapisovali pomocí parametru Property . Jsou přítomny jiné vlastnosti třídy, ale nejsou vyplněny.

Typ:String[]
Aliasy:SelectProperties
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Query

Určuje dotaz, který se má spustit na serveru CIM. Pokud zadaná hodnota obsahuje dvojité uvozovky, jednoduché uvozovky "'nebo zpětné lomítko\, musíte uvozit tyto znaky jejich předponou znakem zpětného lomítka. Pokud zadaná hodnota používá operátor WQL LIKE, musíte uvozovat následující znaky uzavřením do hranatých závorek []: percent %, podtržítko _nebo levá hranatá závorka [.

Dotaz metadat nelze použít k načtení seznamu tříd nebo dotazu na událost. Pokud chcete načíst seznam tříd, použijte rutinu Get-CimClass . K načtení dotazu na události použijte rutinu Register-CimIndicationEvent .

Dialekt dotazu můžete zadat pomocí parametru QueryDialect .

Typ:String
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-QueryDialect

Určuje dotazovací jazyk použitý pro parametr Dotazu. Přijatelné hodnoty pro tento parametr jsou: WQL nebo CQL. Výchozí hodnota je WQL.

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-ResourceUri

Určuje identifikátor URI (Uniform Resource Identifier) prostředku třídy prostředků nebo instance. Identifikátor URI slouží k identifikaci konkrétního typu prostředku, jako jsou disky nebo procesy, v počítači.

Identifikátor URI se skládá z předpony a cesty k prostředku. Příklad:

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

Pokud tento parametr nezadáte, použije se standardní identifikátor URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ prostředku DMTF a název třídy se k němu připojí.

Identifikátor ResourceURI lze použít pouze s relacemi CIM vytvořenými pomocí protokolu WSMan nebo při zadávání parametru ComputerName , který vytvoří relaci CIM pomocí WSManu. Pokud tento parametr zadáte bez zadání parametru ComputerName nebo zadáte relaci CIM vytvořenou pomocí protokolu DCOM, zobrazí se chyba, protože protokol DCOM nepodporuje parametr ResourceURI .

Pokud je zadán parametr ResourceUri i parametr Filter, parametr Filter se ignoruje.

Typ:Uri
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Shallow

Označuje, že instance třídy jsou vráceny bez zahrnutí instancí všech podřízených tříd. Rutina ve výchozím nastavení vrací instance třídy a její podřízené třídy.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

CimInstance

Objekt instance CIM můžete do této rutiny převést.

Výstupy

CimInstance

Tato rutina vrátí jeden nebo více objektů instance CIM představující snímek instancí CIM na serveru CIM.

Poznámky

PowerShell obsahuje následující aliasy pro Get-CimInstance:

  • Windows:
    • gcim

Tato rutina je dostupná jenom na platformách Windows.