Get-CimInstance

Pobiera wystąpienia modelu CIM klasy z serwera CIM.

Składnia

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

Opis

To polecenie cmdlet jest dostępne tylko na platformie Windows.

Polecenie Get-CimInstance cmdlet pobiera wystąpienia modelu CIM klasy z serwera CIM. Możesz określić nazwę klasy lub kwerendę dla tego polecenia cmdlet. To polecenie cmdlet zwraca co najmniej jeden obiekt wystąpienia modelu CIM reprezentujący migawkę wystąpień modelu CIM znajdujących się na serwerze CIM.

Jeśli nie określono parametru InputObject , polecenie cmdlet działa w jeden z następujących sposobów:

  • Jeśli nie określono parametru ComputerName ani parametru CimSession , to polecenie cmdlet działa w lokalnej instrumentacji zarządzania Windows (WMI) przy użyciu sesji modelu obiektów składników (COM).
  • Jeśli określono parametr ComputerName lub parametr CimSession, to polecenie cmdlet działa względem serwera CIM określonego przez parametr ComputerName lub cimSession parametru.

Jeśli określono parametr InputObject, polecenie cmdlet działa na jeden z następujących sposobów:

  • Jeśli nie określono ani parametru ComputerName , ani parametru CimSession , to to polecenie cmdlet używa sesji modelu ciM lub nazwy komputera z obiektu wejściowego.
  • Jeśli określono parametr ComputerName lub CimSession, to to polecenie cmdlet używa wartości parametru CimSession lub Wartości parametru ComputerName.

Przykłady

Przykład 1. Pobieranie wystąpień modelu CIM określonej klasy

W tym przykładzie są pobierane wystąpienia modelu CIM klasy o nazwie Win32_Process.

Get-CimInstance -ClassName Win32_Process

Przykład 2. Pobieranie listy przestrzeni nazw z serwera WMI

W tym przykładzie jest pobierana lista przestrzeni nazw w głównej przestrzeni nazw na serwerze WMI.

Get-CimInstance -Namespace root -ClassName __Namespace

Przykład 3. Pobieranie wystąpień klasy filtrowanej przy użyciu zapytania

W tym przykładzie są pobierane wszystkie wystąpienia modelu CIM rozpoczynające się literą P klasy o nazwie Win32_Process przy użyciu zapytania określonego przez parametr Zapytania .

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

Przykład 4. Pobieranie wystąpień klasy filtrowanej przy użyciu nazwy klasy i wyrażenia filtru

W tym przykładzie są pobierane wszystkie wystąpienia modelu CIM rozpoczynające się literą P klasy o nazwie Win32_Process przy użyciu parametru Filter.

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

Przykład 5. Pobieranie wystąpień modelu CIM tylko z wypełnionymi właściwościami klucza

Ten przykład tworzy nowe wystąpienie modelu CIM w pamięci dla klasy o nazwie Win32_Process z właściwością @{ "Handle"=0 } klucza i przechowuje je w zmiennej o nazwie $x. Zmienna jest przekazywana jako wystąpienie modelu CIM do Get-CimInstance polecenia cmdlet w celu pobrania określonego wystąpienia.

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

Przykład 6. Pobieranie wystąpień modelu CIM i ponowne używanie ich

Ten przykład pobiera wystąpienia modelu CIM klasy o nazwie Win32_Process i przechowuje je w zmiennych $x i $y. Zmienna $x jest następnie formatowana w tabeli zawierającej tylko właściwości Name i KernelModeTime , a tabela jest ustawiona na AutoSize.

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

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

Przykład 7. Pobieranie wystąpień modelu CIM z komputera zdalnego

Ten przykład pobiera wystąpienia modelu CIM klasy o nazwie Win32_ComputerSystem z komputerów zdalnych o nazwach Server01 i Server02.

Get-CimInstance -ClassName Win32_ComputerSystem -ComputerName Server01,Server02

Przykład 8. Pobieranie tylko właściwości klucza zamiast wszystkich właściwości

Ten przykład pobiera tylko właściwości klucza, co zmniejsza rozmiar obiektu i ruchu sieciowego.

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

Przykład 9. Pobieranie tylko podzestawu właściwości zamiast wszystkich właściwości

Ten przykład pobiera tylko podzbiór właściwości, co zmniejsza rozmiar obiektu i ruchu sieciowego.

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

Wystąpienie pobrane za pomocą parametru Property może służyć do wykonywania innych operacji MODELU CIM, na przykład Set-CimInstance lub Invoke-CimMethod.

Przykład 10: Pobieranie wystąpienia modelu CIM przy użyciu sesji modelu CIM

W tym przykładzie na komputerach o nazwach Server01 i Server02 jest tworzona sesja modelu CIM przy użyciu New-CimSession polecenia cmdlet i przechowuje informacje o sesji w zmiennej o nazwie $s. Zawartość zmiennej jest następnie przekazywana Get-CimInstance przy użyciu parametru CimSession w celu pobrania wystąpień modelu CIM klasy o nazwie Win32_ComputerSystem.

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

Parametry

-CimSession

Określa sesję modelu CIM, która ma być używana dla tego polecenia cmdlet. Wprowadź zmienną zawierającą sesję modelu cim lub polecenie, które tworzy lub pobiera sesję modelu CIM, na przykład New-CimSession polecenia cmdlet lub Get-CimSession . Aby uzyskać więcej informacji, zobacz about_CimSession.

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

-ClassName

Określa nazwę klasy CIM, dla której mają być pobierane wystąpienia modelu CIM. Aby przeglądać listę klas, można użyć uzupełniania tabulatorów, ponieważ program PowerShell pobiera listę klas z lokalnego serwera WMI, aby podać listę nazw klas.

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

-ComputerName

Określa komputer, na którym chcesz uruchomić operację CIM. Można określić w pełni kwalifikowaną nazwę domeny (FQDN), nazwę NetBIOS lub adres IP. Jeśli nie określisz tego parametru, polecenie cmdlet wykonuje operację na komputerze lokalnym przy użyciu modelu obiektów składników (COM).

Jeśli określisz ten parametr, polecenie cmdlet utworzy sesję tymczasową na określonym komputerze przy użyciu protokołu WsMan.

Jeśli na tym samym komputerze jest wykonywanych wiele operacji, połącz się przy użyciu sesji modelu CIM, aby uzyskać lepszą wydajność.

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

-Filter

Określa klauzulę where, która ma być używana jako filtr. Określ klauzulę w języku WQL lub języku zapytań CQL . Nie dołączaj WHERE słowa kluczowego do wartości parametru .

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

-InputObject

Określa obiekt wystąpienia modelu CIM, który ma być używany jako dane wejściowe.

Jeśli już pracujesz z obiektem wystąpienia modelu CIM, możesz użyć tego parametru, aby przekazać obiekt wystąpienia modelu CIM, aby uzyskać najnowszą migawkę z serwera CIM. Po przekazaniu obiektu wystąpienia modelu CIM jako danych wejściowych Get-CimInstance zwraca obiekt z serwera przy użyciu operacji get CIM zamiast operacji wyliczania lub wykonywania zapytania. Użycie operacji pobierania modelu ciM jest bardziej wydajne niż pobieranie wszystkich wystąpień, a następnie filtrowanie ich.

Parametr InputObject nie wylicza się w kolekcjach. Jeśli kolekcja zostanie przekazana, zostanie zgłoszony błąd. Podczas pracy z kolekcjami należy przekazać dane wejściowe w celu wyliczenia wartości.

Jeśli klasa CIM nie implementuje operacji get, określenie parametru InputObject zwraca błąd.

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

-KeyOnly

Wskazuje, że zwracane są tylko obiekty z wypełnionymi właściwościami klucza. Określenie parametru KeyOnly zmniejsza ilość danych przesyłanych przez sieć.

Użyj parametru KeyOnly , aby zwrócić tylko niewielką część obiektu, która może być używana dla innych operacji, takich jak Set-CimInstance polecenia cmdlet lub Get-CimAssociatedInstance .

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

-Namespace

Określa przestrzeń nazw klasy CIM.

Domyślna przestrzeń nazw to root/cimv2. Za pomocą uzupełniania karty można przeglądać listę przestrzeni nazw, ponieważ program PowerShell pobiera listę przestrzeni nazw z lokalnego serwera WMI w celu udostępnienia listy przestrzeni nazw.

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

-OperationTimeoutSec

Określa czas oczekiwania polecenia cmdlet na odpowiedź z komputera. Domyślnie wartość tego parametru to 0, co oznacza, że polecenie cmdlet używa domyślnej wartości limitu czasu dla serwera.

Jeśli parametr OperationTimeoutSec jest ustawiony na wartość mniejszą niż limit czasu ponawiania próby niezawodnego połączenia przez 3 minuty, awarie sieci, które trwają dłużej niż wartość parametru OperationTimeoutSec, nie są możliwe do odzyskania, ponieważ operacja na serwerze przekracza limit czasu, zanim klient będzie mógł ponownie nawiązać połączenie.

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

-Property

Określa zestaw właściwości wystąpienia do pobrania. Użyj tego parametru, gdy musisz zmniejszyć rozmiar zwracanego obiektu w pamięci lub za pośrednictwem sieci. Zwrócony obiekt zawiera również właściwości klucza, nawet jeśli nie zostały wymienione przy użyciu parametru Property . Inne właściwości klasy są obecne, ale nie są wypełniane.

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

-Query

Określa zapytanie do uruchomienia na serwerze CIM. Jeśli określona wartość zawiera podwójne cudzysłowy ", pojedyncze cudzysłowy 'lub ukośnik \odwrotny, należy je użyć, prefiksując je znakiem ukośnika odwrotnego. Jeśli określona wartość używa operatora LIKE WQL, należy użyć następujących znaków, ujęcie ich w nawiasy kwadratowe[]: procent %, podkreślenie _lub otwierając nawias [kwadratowy .

Nie można użyć zapytania metadanych do pobrania listy klas lub zapytania zdarzenia. Aby pobrać listę klas, użyj Get-CimClass polecenia cmdlet . Aby pobrać zapytanie o zdarzenie, użyj Register-CimIndicationEvent polecenia cmdlet .

Dialekt zapytania można określić przy użyciu parametru QueryDialect .

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

-QueryDialect

Określa język zapytań używany dla parametru Query. Dopuszczalne wartości tego parametru to: WQL lub CQL. Wartość domyślna to WQL.

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

-ResourceUri

Określa identyfikator URI (resource uniform resource identifier) klasy zasobów lub wystąpienia. Identyfikator URI służy do identyfikowania określonego typu zasobu, takiego jak dyski lub procesy, na komputerze.

Identyfikator URI składa się z prefiksu i ścieżki do zasobu. Na przykład:

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

Domyślnie, jeśli nie określisz tego parametru, jest używany standardowy identyfikator URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ zasobu DMTF, a nazwa klasy jest dołączana do niego.

Identyfikator ResourceURI może być używany tylko z sesjami modelu CIM utworzonymi przy użyciu protokołu WSMan lub podczas określania parametru ComputerName , który tworzy sesję modelu CIM przy użyciu narzędzia WSMan. Jeśli określisz ten parametr bez określenia parametru ComputerName lub jeśli określisz sesję modelu ciM utworzoną przy użyciu protokołu DCOM, zostanie wyświetlony błąd, ponieważ protokół DCOM nie obsługuje parametru ResourceURI .

Jeśli określono zarówno parametr ResourceUri , jak i parametr Filter , parametr Filter zostanie zignorowany.

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

-Shallow

Wskazuje, że wystąpienia klasy są zwracane bez uwzględniania wystąpień żadnych klas podrzędnych. Domyślnie polecenie cmdlet zwraca wystąpienia klasy i jej klas podrzędnych.

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

Dane wejściowe

CimInstance

Do tego polecenia cmdlet można przekazać obiekt wystąpienia modelu CIM.

Dane wyjściowe

CimInstance

To polecenie cmdlet zwraca co najmniej jeden obiekt wystąpienia modelu CIM reprezentujący migawkę wystąpień modelu CIM na serwerze CIM.

Uwagi

Program PowerShell zawiera następujące aliasy dla programu Get-CimInstance:

  • Windows:
    • gcim

To polecenie cmdlet jest dostępne tylko na platformach windows.