Sdílet prostřednictvím


Get-WmiObject

Získá instance třídy WMI (Windows Management Instrumentation) nebo informace o dostupných třídách.

Syntax

query (Výchozí)

Get-WmiObject
    [-Class] <String>
    [[-Property] <String[]>]
    [-Filter <String>]
    [-Amended]
    [-DirectRead]
    [-AsJob]
    [-Impersonation <ImpersonationLevel>]
    [-Authentication <AuthenticationLevel>]
    [-Locale <String>]
    [-EnableAllPrivileges]
    [-Authority <String>]
    [-Credential <PSCredential>]
    [-ThrottleLimit <Int32>]
    [-ComputerName <String[]>]
    [-Namespace <String>]
    [<CommonParameters>]

list

Get-WmiObject
    [[-Class] <String>]
    [-Recurse]
    [-Amended]
    [-List]
    [-AsJob]
    [-Impersonation <ImpersonationLevel>]
    [-Authentication <AuthenticationLevel>]
    [-Locale <String>]
    [-EnableAllPrivileges]
    [-Authority <String>]
    [-Credential <PSCredential>]
    [-ThrottleLimit <Int32>]
    [-ComputerName <String[]>]
    [-Namespace <String>]
    [<CommonParameters>]

WQLQuery

Get-WmiObject
    -Query <String>
    [-Amended]
    [-DirectRead]
    [-AsJob]
    [-Impersonation <ImpersonationLevel>]
    [-Authentication <AuthenticationLevel>]
    [-Locale <String>]
    [-EnableAllPrivileges]
    [-Authority <String>]
    [-Credential <PSCredential>]
    [-ThrottleLimit <Int32>]
    [-ComputerName <String[]>]
    [-Namespace <String>]
    [<CommonParameters>]

class

Get-WmiObject
    [-Amended]
    [-AsJob]
    [-Impersonation <ImpersonationLevel>]
    [-Authentication <AuthenticationLevel>]
    [-Locale <String>]
    [-EnableAllPrivileges]
    [-Authority <String>]
    [-Credential <PSCredential>]
    [-ThrottleLimit <Int32>]
    [-ComputerName <String[]>]
    [-Namespace <String>]
    [<CommonParameters>]

path

Get-WmiObject
    [-Amended]
    [-AsJob]
    [-Impersonation <ImpersonationLevel>]
    [-Authentication <AuthenticationLevel>]
    [-Locale <String>]
    [-EnableAllPrivileges]
    [-Authority <String>]
    [-Credential <PSCredential>]
    [-ThrottleLimit <Int32>]
    [-ComputerName <String[]>]
    [-Namespace <String>]
    [<CommonParameters>]

Description

Počínaje PowerShellem 3.0 byla tato rutina nahrazena Get-CimInstance.

Rutina Get-WmiObject získá instance tříd služby WMI nebo informace o dostupných třídách služby WMI. Pokud chcete zadat vzdálený počítač, použijte parametr ComputerName. Pokud je zadán parametr List, rutina získá informace o třídách WMI, které jsou k dispozici v zadaném oboru názvů. Pokud je zadaný parametr query, rutina spustí příkaz WMI query language (WQL).

Rutina Get-WmiObject nepoužívá vzdálenou vzdálenou komunikace prostředí Windows PowerShell. Parametr ComputerName rutiny Get-WmiObject můžete použít i v případě, že váš počítač nesplňuje požadavky vzdálené komunikace prostředí Windows PowerShell nebo není nakonfigurovaný pro vzdálené komunikace v prostředí Windows PowerShell.

Počínaje Windows PowerShellem 3.0 má vlastnost __Server objektu, který vrací, alias PSComputerName. To usnadňuje zahrnutí názvu zdrojového počítače do výstupu a sestav.

Příklady

Příklad 1: Získání procesů na místním počítači

Tento příklad získá procesy v místním počítači.

Get-WmiObject -Class Win32_Process

Příklad 2: Získá služby na vzdáleném počítači

Tento příklad získá služby na vzdáleném počítači. Parametr ComputerName určuje IP adresu vzdáleného počítače. Ve výchozím nastavení musí být aktuální uživatelský účet členem skupiny Administrators na vzdáleném počítači.

Get-WmiObject -Class Win32_Service -ComputerName 10.1.4.62

Příklad 3: Získání tříd rozhraní WMI v kořenovém nebo výchozím oboru názvů místního počítače

Tento příklad získá třídy WMI v kořenovém nebo výchozím oboru názvů místního počítače.

Get-WmiObject -Namespace "root/DEFAULT" -List

Příklad 4: Získání pojmenované služby na více počítačích

Tento příklad získá službu WinRM na počítačích určených hodnotou parametru ComputerName.

Get-WmiObject -Query "select * from Win32_Service where name='WinRM'" -ComputerName Server01, Server02 |
  Format-List -Property PSComputerName, Name, ExitCode, Name, ProcessId, StartMode, State, Status
PSComputerName : SERVER01
Name           : WinRM
ExitCode       : 0
Name           : WinRM
ProcessId      : 844
StartMode      : Auto
State          : Running
Status         : OK

PSComputerName : SERVER02
Name           : WinRM
ExitCode       : 0
Name           : WinRM
ProcessId      : 932
StartMode      : Auto
State          : Running
Status         : OK

Operátor kanálu (|) odešle výstup do rutiny Format-List, která přidá vlastnost PSComputerName do výchozího výstupu. PSComputerName je alias vlastnosti __Server objektů, které Get-WmiObject vrací. Tento alias byl představen v PowerShellu 3.0.

Příklad 5: Zastavení služby na vzdáleném počítači

Tento příklad zastaví službu WinRM na vzdáleném počítači. Get-WmiObject získá instanci objektu služby WinRM na Serveru01. Potom vyvolá metodu StopService třídy Win32_Service rozhraní WMI na daném objektu.

(Get-WmiObject -Class Win32_Service -Filter "name='WinRM'" -ComputerName Server01).StopService()

To je ekvivalentem použití rutiny Stop-Service.

Příklad 6: Získání systému BIOS na místním počítači

Tento příklad získá informace o systému BIOS z místního počítače. Parametr Property rutiny Format-List slouží k zobrazení všech vlastností vráceného objektu v seznamu. Ve výchozím nastavení se zobrazí pouze podmnožina vlastností definovaných v konfiguračním souboru Types.ps1xml.

Get-WmiObject -Class Win32_BIOS | Format-List -Property *
Status                : OK
Name                  : Phoenix ROM BIOS PLUS Version 1.10 A05
Caption               : Phoenix ROM BIOS PLUS Version 1.10 A05
SMBIOSPresent         : True
__GENUS               : 2
__CLASS               : Win32_BIOS
__SUPERCLASS          : CIM_BIOSElement
__DYNASTY             : CIM_ManagedSystemElement
__RELPATH             : Win32_BIOS.Name="Phoenix ROM BIOS PLUS Version 1.10
__PROPERTY_COUNT      : 27
__DERIVATION          : {CIM_BIOSElement, CIM_SoftwareElement, CIM_LogicalElement,
__SERVER              : Server01
__NAMESPACE           : root\cimv2
__PATH                : \\SERVER01\root\cimv2:Win32_BIOS.Name="Phoenix ROM BIOS
BiosCharacteristics   : {7, 9, 10, 11...}
BIOSVersion           : {DELL   - 15, Phoenix ROM BIOS PLUS Version 1.10 A05}
BuildNumber           :
CodeSet               :
CurrentLanguage       : en|US|iso8859-1
Description           : Phoenix ROM BIOS PLUS Version 1.10 A05
IdentificationCode    :
InstallableLanguages  : 1
InstallDate           :
LanguageEdition       :
ListOfLanguages       : {en|US|iso8859-1}
Manufacturer          : Dell Inc.
OtherTargetOS         :
PrimaryBIOS           : True
ReleaseDate           : 20101103000000.000000+000
SerialNumber          : 8VDM9P1
SMBIOSBIOSVersion     : A05
SMBIOSMajorVersion    : 2
SMBIOSMinorVersion    : 6
SoftwareElementID     : Phoenix ROM BIOS PLUS Version 1.10 A05
SoftwareElementState  : 3
TargetOperatingSystem : 0
Version               : DELL   - 15
Scope                 : System.Management.ManagementScope
Path                  : \\SERVER01\root\cimv2:Win32_BIOS.Name="Phoenix ROM BIOS
Options               : System.Management.ObjectGetOptions
ClassPath             : \\JUNE-PC\root\cimv2:Win32_BIOS
Properties            : {BiosCharacteristics, BIOSVersion, BuildNumber, Caption...}
SystemProperties      : {__GENUS, __CLASS, __SUPERCLASS, __DYNASTY...}
Qualifiers            : {dynamic, Locale, provider, UUID}
Site                  :
Container             :

Příklad 7: Získání služeb ve vzdáleném počítači

Tento příklad používá parametr credential rutiny Get-WmiObject k získání služeb na vzdáleném počítači. Hodnota parametru Credential je uživatelské jméno účtu. Uživateli se zobrazí výzva k zadání hesla.

Get-WmiObject Win32_Service -Credential FABRIKAM\administrator -ComputerName Fabrikam

Poznámka:

Přihlašovací údaje nelze použít při cílení na místní počítač.

Parametry

-Amended

Získá nebo nastaví hodnotu, která určuje, zda objekty, které jsou vráceny z rozhraní WMI by měly obsahovat změněné informace. Změněné informace jsou obvykle lokalizovatelné informace, jako jsou popisy objektů a vlastností, které jsou připojeny k objektu WMI.

Vlastnosti parametru

Typ:SwitchParameter
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-AsJob

Spustí příkaz jako úlohu na pozadí. Pomocí tohoto parametru můžete spouštět příkazy, které potrvá dlouhou dobu.

Pokud použijete parametr AsJob, vrátí příkaz objekt, který představuje úlohu na pozadí, a pak zobrazí příkazový řádek. Během dokončení úlohy můžete pokračovat v práci v relaci. Pokud Get-WmiObject použijete s parametrem ComputerName, úloha se vytvoří v místním počítači a výsledky ze vzdálených počítačů se automaticky vrátí do místního počítače. Ke správě úlohy použijte rutiny, které obsahují Job podstatné jméno. K získání výsledků úlohy použijte rutinu Receive-Job.

Další informace o úlohách prostředí Windows PowerShell na pozadí najdete v tématu about_Jobs a about_Remote_Jobs.

Vlastnosti parametru

Typ:SwitchParameter
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Authentication

Určuje úroveň ověřování, která se má použít s připojením rozhraní WMI. Platné hodnoty jsou:

  • -1: beze změny
  • 0: výchozí
  • 1: Žádné (neprovádí se žádné ověřování.)
  • 2: Connect (Ověřování se provádí pouze v případech, kdy klient vytvoří relaci s aplikací.)
  • 3: volání (Ověřování se provádí pouze na začátku každého volání, když aplikace obdrží požadavek.)
  • 4: paketu (Ověřování se provádí se všemi daty přijatými z klienta.)
  • 5: packetIntegrity (Všechna data přenášená mezi klientem a aplikací se ověřují a ověřují.)
  • 6: PacketPrivacy (používají se vlastnosti ostatních úrovní ověřování a všechna data jsou šifrovaná.)

Vlastnosti parametru

Typ:AuthenticationLevel
Default value:None
Přípustné hodnoty:Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Authority

Určuje autoritu, která se má použít k ověření připojení rozhraní WMI. Můžete zadat standardní ověřování NTLM nebo Kerberos. Chcete-li použít NTLM, nastavte nastavení autority na ntlmdomain:<DomainName>, kde <DomainName> identifikuje platný název domény NTLM. Chcete-li použít protokol Kerberos, zadejte kerberos:<DomainName>\<ServerName>. Nastavení autority nelze zahrnout při připojení k místnímu počítači.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Class

Určuje název třídy WMI. Při použití tohoto parametru rutina načte instance třídy WMI.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:TřídaNázev

Sady parametrů

query
Position:1
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False
list
Position:1
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-ComputerName

Určuje cílový počítač pro operaci správy. Zadejte plně kvalifikovaný název domény (FQDN), název NetBIOS nebo IP adresu. Pokud je vzdálený počítač v jiné doméně než místní počítač, vyžaduje se plně kvalifikovaný název domény.

Výchozí hodnota je místní počítač. Pokud chcete zadat místní počítač, například v seznamu názvů počítačů, použijte localhost, název místního počítače nebo tečku (.).

Při zadávání vzdáleného počítače musí mít váš aktuální účet nebo účet, který zadáte pomocí parametru přihlašovacích údajů, příslušná oprávnění pro přístup k informacím.

Tento parametr nespoléhá na vzdálené komunikace Prostředí Windows PowerShell, která používá službu WS-Management. Parametr ComputerName můžete použít i v případě, že počítač není nakonfigurovaný tak, aby spouštět WS-Management vzdálených příkazů.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Kn

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Credential

Určuje uživatelský účet, který má oprávnění k provedení této akce. Výchozí hodnota je aktuální uživatel. Zadejte uživatelské jméno, například User01, Domain01\User01nebo User@Contoso.com. Nebo zadejte objekt PSCredential, například objekt vrácený rutinou Get-Credential. Když zadáte uživatelské jméno, zobrazí se výzva k zadání hesla. Přihlašovací údaje nelze použít při cílení na místní počítač.

Vlastnosti parametru

Typ:PSCredential
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-DirectRead

Určuje, zda je pro zadanou třídu požadován přímý přístup k zprostředkovateli rozhraní WMI bez ohledu na její základní třídu nebo na odvozené třídy.

Vlastnosti parametru

Typ:SwitchParameter
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

query
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False
WQLQuery
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-EnableAllPrivileges

Povolí všechna oprávnění aktuálního uživatele před provedením příkazu volání rozhraní WMI.

Vlastnosti parametru

Typ:SwitchParameter
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Filter

Určuje Klauzule Where, která se má použít jako filtr. Používá syntaxi dotazovacího jazyka WMI (WQL).

Důležité

Nezahrnujte do hodnoty parametru klíčové slovo Where. Například následující příkazy vrátí pouze logické disky, které mají Id zařízení "C:\ a služby, které mají název WinRM" bez použití Where klíčové slovo.

Get-WmiObject Win32_LogicalDisk -Filter "DeviceID = 'C:' "

Get-WmiObject Win32_Service -Filter "name='WinRM'"

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

query
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Impersonation

Určuje úroveň zosobnění, která se má použít.

Přijatelné hodnoty pro tento parametr jsou:

  • 0: Výchozí. Přečte místní registr pro výchozí úroveň zosobnění. Výchozí hodnota je obvykle nastavená na zosobnění.
  • 1: anonymní. Skryje přihlašovací údaje volajícího.
  • 2: Identifikovat. Umožňuje objektům dotazovat přihlašovací údaje volajícího.
  • 3: zosobnit. Umožňuje objektům používat přihlašovací údaje volajícího.
  • 4: delegát. Umožňuje objektům povolit, aby jiné objekty používaly přihlašovací údaje volajícího.

Vlastnosti parametru

Typ:ImpersonationLevel
Default value:None
Přípustné hodnoty:Default, Anonymous, Identify, Impersonate, Delegate
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-List

Získá názvy tříd WMI v oboru názvů úložiště WMI, který je určen Obor názvů parametr.

Pokud zadáte parametr seznam, ale nikoli parametr oboru názvů, Get-WmiObject ve výchozím nastavení použije obor názvů root/CIMV2 obor názvů. Tato rutina nepoužívá položku registru Výchozí obor názvů v klíči registru HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\Scripting k určení výchozího oboru názvů.

Vlastnosti parametru

Typ:SwitchParameter
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

list
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Locale

Určuje upřednostňované národní prostředí pro objekty WMI. Zadejte hodnotu ve formátu MS_<LCID>.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Namespace

Při použití s parametrem třídy určuje parametr Obor názvů obor názvů rozhraní WMI, ve kterém je umístěna zadaná třída služby WMI. Při použití s parametrem List určuje obor názvů, ze kterého se mají shromažďovat informace o třídě služby WMI.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:NS

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Property

Určuje vlastnosti třídy služby WMI, ze které tato rutina získává informace. Zadejte názvy vlastností.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

query
Position:1
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Query

Spustí zadaný příkaz WMI Query Language (WQL). Tento parametr nepodporuje dotazy na události.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

WQLQuery
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Recurse

Vyhledá aktuální obor názvů a všechny ostatní obory názvů název třídy, který je určen parametrem Class.

Vlastnosti parametru

Typ:SwitchParameter
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

list
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-ThrottleLimit

Určuje maximální počet operací rozhraní WMI, které lze spustit současně. Tento parametr je platný pouze v případě, že se v příkazu použije parametr AsJob.

Vlastnosti parametru

Typ:Int32
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

CommonParameters

Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.

Vstupy

None

Vstup do Get-WmiObjectnelze převést .

Výstupy

PSObject or System.Management.Automation.RemotingJob

Pokud použijete parametr AsJob, rutina vrátí objekt úlohy. V opačném případě objekt, který Get-WmiObject vrací, závisí na hodnotě parametru Class.

Poznámky

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

  • gwmi

Pokud chcete získat přístup k informacím rozhraní WMI na vzdáleném počítači, musí rutina běžet pod účtem, který je členem místní skupiny Administrators na vzdáleném počítači. Nebo můžete změnit výchozí řízení přístupu v oboru názvů služby WMI vzdáleného úložiště, aby bylo možné udělit přístupová práva jiným účtům.

Ve výchozím nastavení se zobrazují pouze některé vlastnosti každé třídy služby WMI. Sada vlastností zobrazených pro každou třídu služby WMI je určena v konfiguračním souboru Types.ps1xml. Pokud chcete získat všechny vlastnosti objektu WMI, použijte rutiny Get-Member nebo Format-List.