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 cmdlet Get-CimInstance
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 na jeden z następujących sposobów:
- Jeśli nie określono parametru ComputerName ani parametru CimSession, to to polecenie cmdlet działa w lokalnej sesji instrumentacji zarządzania Windows (WMI) przy użyciu sesji modelu obiektów składników (COM).
- Jeśli określono parametr
ComputerName lub parametrCimSession , to polecenie cmdlet działa względem serwera CIM określonego przez parametrComputerName lub CimSession parametru.
Jeśli określono parametr InputObject, polecenie cmdlet działa w jeden z następujących sposobów:
- Jeśli nie określono parametru ComputerName ani parametru CimSession, to to polecenie cmdlet używa sesji lub nazwy komputera modelu CIM z obiektu wejściowego.
- Jeśli określono parametr ComputerName lub parametr CimSession, to to polecenie cmdlet używa wartości parametru CimSession lub ComputerName wartości parametru.
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
Ten przykład pobiera listę przestrzeni nazw w przestrzeni nazw głównej 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 Query.
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ą klucza @{ "Handle"=0 }
i przechowuje je w zmiennej o nazwie $x
. Zmienna jest przekazywana jako wystąpienie modelu CIM do polecenia cmdlet Get-CimInstance
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, tabela 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 nazwie 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 właściwości
Przykład 10: Pobieranie wystąpienia modelu CIM przy użyciu sesji modelu CIM
W tym przykładzie na komputerach o nazwie Server01 i Server02 przy użyciu polecenia cmdlet New-CimSession
i przechowuje informacje o sesji w zmiennej o nazwie $s
. Zawartość zmiennej jest następnie przekazywana do Get-CimInstance
przy użyciu parametru CimSession, aby pobrać wystąpienia 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 polecenia cmdlet New-CimSession
lub Get-CimSession
. Aby uzyskać więcej informacji, zobacz about_CimSession.
Typ: | CimSession[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | String |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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ść.
Typ: | String[] |
Aliasy: | CN, ServerName |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Filter
Określa klauzulę where, która ma być używana jako filtr. Określ klauzulę w WHERE
w wartości parametru .
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | CimInstance |
Aliasy: | CimInstance |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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 służyć do innych operacji, takich jak polecenia cmdlet Set-CimInstance
lub Get-CimAssociatedInstance
.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | UInt32 |
Aliasy: | OT |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | String[] |
Aliasy: | SelectProperties |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Query
Określa zapytanie do uruchomienia na serwerze CIM. Jeśli określona wartość zawiera cudzysłowy podwójne "
, apostrofy '
lub ukośnik odwrotny \
, należy użyć tych znaków, prefiksując je znakiem ukośnika odwrotnego. Jeśli określona wartość używa operatora WQL LIKE, należy zamknąć następujące znaki, 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 polecenia cmdlet Get-CimClass
. Aby pobrać zapytanie o zdarzenie, użyj polecenia cmdlet Register-CimIndicationEvent
.
Dialekt zapytania można określić przy użyciu parametru QueryDialect.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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, używany jest identyfikator URI zasobu standardowego DMTF http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
, a nazwa klasy jest dołączana do niego.
ResourceURI można używać 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 resourceURI parametru.
Jeśli określono parametr
Typ: | Uri |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
Do tego polecenia cmdlet można przekazać obiekt wystąpienia modelu CIM.
Dane wyjściowe
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 Get-CimInstance
:
- Windows:
gcim
To polecenie cmdlet jest dostępne tylko na platformach windows.