Get-WmiObject
Hämtar instanser av WMI-klasser (Windows Management Instrumentation) eller information om tillgängliga klasser.
Syntax
query (Standard)
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
Från och med PowerShell 3.0 har den här cmdleten ersatts av Get-CimInstance.
Cmdleten Get-WmiObject hämtar instanser av WMI-klasser eller information om tillgängliga WMI-klasser. Om du vill ange en fjärrdator använder du parametern ComputerName. Om parametern List anges hämtar cmdleten information om de WMI-klasser som är tillgängliga i ett angivet namnområde. Om parametern Query anges kör cmdleten en WMI-frågespråksinstrukering (WQL).
Cmdleten Get-WmiObject använder inte Windows PowerShell-fjärrkommunikation för att utföra fjärråtgärder.
Du kan använda parametern ComputerName för cmdleten Get-WmiObject även om datorn inte uppfyller kraven för Windows PowerShell-fjärrkommunikation eller inte har konfigurerats för fjärrkommunikation i Windows PowerShell.
Från och med Windows PowerShell 3.0 har egenskapen __Server för objektet som Get-WmiObject returnerar ett PSComputerName alias. Det gör det enklare att inkludera källdatorns namn i utdata och rapporter.
Exempel
Exempel 1: Hämta processer på den lokala datorn
Det här exemplet hämtar processerna på den lokala datorn.
Get-WmiObject -Class Win32_Process
Exempel 2: Hämtar tjänster på en fjärrdator
Det här exemplet hämtar tjänsterna på en fjärrdator. Parametern ComputerName anger IP-adressen för en fjärrdator. Som standard måste det aktuella användarkontot vara medlem i gruppen administratörer på fjärrdatorn.
Get-WmiObject -Class Win32_Service -ComputerName 10.1.4.62
Exempel 3: Hämta WMI-klasser i den lokala datorns rot- eller standardnamnområde
Det här exemplet hämtar WMI-klasserna i den lokala datorns rot- eller standardnamnområde.
Get-WmiObject -Namespace "root/DEFAULT" -List
Exempel 4: Hämta en namngiven tjänst på flera datorer
Det här exemplet hämtar WinRM-tjänsten på de datorer som anges av värdet för parametern 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
En pipelineoperator (|) skickar utdata till cmdleten Format-List, som lägger till egenskapen PSComputerName till standardutdata.
PSComputerName är ett alias för egenskapen __Server för de objekt som Get-WmiObject returnerar. Det här aliaset introducerades i PowerShell 3.0.
Exempel 5: Stoppa en tjänst på en fjärrdator
Det här exemplet stoppar WinRM-tjänsten på en fjärrdator.
Get-WmiObject hämtar instansen av WinRM-tjänstobjektet på Server01. Sedan anropas metoden StopService för Win32_Service WMI-klassen på objektet.
(Get-WmiObject -Class Win32_Service -Filter "name='WinRM'" -ComputerName Server01).StopService()
Detta motsvarar att använda cmdleten Stop-Service.
Exempel 6: Hämta BIOS på den lokala datorn
Det här exemplet hämtar BIOS-informationen från den lokala datorn. Parametern Egenskap för cmdleten Format-List används för att visa alla egenskaper för det returnerade objektet i en lista. Som standard visas endast den delmängd av egenskaper som definierats i Types.ps1xml konfigurationsfilen.
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 :
Exempel 7: Hämta tjänsterna på en fjärrdator
I det här exemplet används parametern Credential för cmdleten Get-WmiObject för att hämta tjänsterna på en fjärrdator. Värdet för parametern Credential är ett användarkontonamn. Användaren uppmanas att ange ett lösenord.
Get-WmiObject Win32_Service -Credential FABRIKAM\administrator -ComputerName Fabrikam
Anmärkning
Autentiseringsuppgifter kan inte användas när du riktar in dig på den lokala datorn.
Parametrar
-Amended
Hämtar eller anger ett värde som anger om de objekt som returneras från WMI ska innehålla ändrad information. Vanligtvis är ändrad information lokal information, till exempel objekt- och egenskapsbeskrivningar, som är kopplad till WMI-objektet.
Parameteregenskaper
| Typ: | SwitchParameter |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-AsJob
Kör kommandot som ett bakgrundsjobb. Använd den här parametern för att köra kommandon som tar lång tid att slutföra.
När du använder parametern AsJob returnerar kommandot ett objekt som representerar bakgrundsjobbet och visar sedan kommandotolken. Du kan fortsätta att arbeta i sessionen medan jobbet är klart. Om Get-WmiObject används med parametern ComputerName skapas jobbet på den lokala datorn och resultatet från fjärrdatorerna returneras automatiskt till den lokala datorn. Om du vill hantera jobbet använder du de cmdletar som innehåller Job substantiv. Använd cmdleten Receive-Job för att hämta jobbresultatet.
Mer information om Windows PowerShell-bakgrundsjobb finns i about_Jobs och about_Remote_Jobs.
Parameteregenskaper
| Typ: | SwitchParameter |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Authentication
Anger den autentiseringsnivå som ska användas med WMI-anslutningen. Giltiga värden är:
-
-1: oförändrat -
0: standard -
1: Ingen (ingen autentisering utförs.) -
2: Connect (Autentisering utförs endast när klienten upprättar en relation med programmet.) -
3: Anropa (Autentisering utförs endast i början av varje anrop när programmet tar emot begäran.) -
4: Packet (Autentisering utförs på alla data som tas emot från klienten.) -
5: PacketIntegrity (Alla data som överförs mellan klienten och programmet autentiseras och verifieras.) -
6: PacketPrivacy (egenskaperna för de andra autentiseringsnivåerna används och alla data krypteras.)
Parameteregenskaper
| Typ: | AuthenticationLevel |
| Standardvärde: | None |
| Godkända värden: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Authority
Anger den utfärdare som ska användas för att autentisera WMI-anslutningen. Du kan ange standardautentisering för NTLM eller Kerberos. Om du vill använda NTLM anger du utfärdarinställningen till ntlmdomain:<DomainName>, där <DomainName> identifierar ett giltigt NTLM-domännamn. Om du vill använda Kerberos anger du kerberos:<DomainName>\<ServerName>. Du kan inte inkludera utfärdarinställningen när du ansluter till den lokala datorn.
Parameteregenskaper
| Typ: | String |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Class
Anger namnet på en WMI-klass. När den här parametern används hämtar cmdleten instanser av WMI-klassen.
Parameteregenskaper
| Typ: | String |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
| Alias: | Klassnamn |
Parameteruppsättningar
query
| Position: | 1 |
| Obligatorisk: | True |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
list
| Position: | 1 |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-ComputerName
Anger måldatorn för hanteringsåtgärden. Ange ett fullständigt domännamn (FQDN), ett NetBIOS-namn eller en IP-adress. När fjärrdatorn finns i en annan domän än den lokala datorn krävs det fullständigt kvalificerade domännamnet.
Standardvärdet är den lokala datorn. Om du vill ange den lokala datorn, till exempel i en lista med datornamn, använder du localhost, namnet på den lokala datorn eller en punkt (.).
När du anger en fjärrdator måste ditt aktuella konto eller det som du anger med parametern Credential ha rätt behörighet att komma åt informationen.
Den här parametern förlitar sig inte på Windows PowerShell-fjärrkommunikation, som använder WS-Management. Du kan använda parametern ComputerName för Get-WmiObject även om datorn inte är konfigurerad för att köra WS-Management fjärrkommandon.
Parameteregenskaper
| Typ: | String[] |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
| Alias: | Cn |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Credential
Anger ett användarkonto som har behörighet att utföra den här åtgärden. Standardvärdet är den aktuella användaren. Ange ett användarnamn, till exempel User01, Domain01\User01eller User@Contoso.com. Du kan också ange ett PSCredential- objekt, till exempel ett objekt som returneras av cmdleten Get-Credential. När du skriver ett användarnamn uppmanas du att ange ett lösenord. Autentiseringsuppgifter kan inte användas när du riktar in dig på den lokala datorn.
Parameteregenskaper
| Typ: | PSCredential |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-DirectRead
Anger om direkt åtkomst till WMI-providern begärs för den angivna klassen utan hänsyn till basklassen eller dess härledda klasser.
Parameteregenskaper
| Typ: | SwitchParameter |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
query
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
WQLQuery
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-EnableAllPrivileges
Aktiverar alla behörigheter för den aktuella användaren innan kommandot gör WMI-anropet.
Parameteregenskaper
| Typ: | SwitchParameter |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Filter
Anger en Where-sats som ska användas som ett filter. Använder syntaxen för WMI-frågespråket (WQL).
Viktigt!
Ta inte med nyckelordet Where i parameterns värde. Följande kommandon returnerar till exempel endast de logiska diskar som har en DeviceID- av "C:\ och tjänster som har namnet "WinRM" utan att använda nyckelordet Where.
Get-WmiObject Win32_LogicalDisk -Filter "DeviceID = 'C:' "
Get-WmiObject Win32_Service -Filter "name='WinRM'"
Parameteregenskaper
| Typ: | String |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
query
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Impersonation
Anger den personifieringsnivå som ska användas.
De godtagbara värdena för den här parametern är:
-
0: Standard. Läser det lokala registret för standard personifieringsnivån. Standardvärdet är vanligtvis inställt på Personifiera. -
1: Anonym. Döljer anroparens autentiseringsuppgifter. -
2: Identifiera. Tillåter att objekt frågar efter anroparens autentiseringsuppgifter. -
3: Personifiera. Tillåter att objekt använder anroparens autentiseringsuppgifter. -
4: Delegera. Tillåter att objekt tillåter att andra objekt använder anroparens autentiseringsuppgifter.
Parameteregenskaper
| Typ: | ImpersonationLevel |
| Standardvärde: | None |
| Godkända värden: | Default, Anonymous, Identify, Impersonate, Delegate |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-List
Hämtar namnen på WMI-klasserna i WMI-lagringsplatsens namnområde som anges av parametern Namespace.
Om du anger parametern List, men inte parametern Namespace använder Get-WmiObjectroot/CIMV2-namnområdet som standard. Den här cmdleten använder inte standardnamnområde registerpost i HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\Scripting registernyckel för att fastställa standardnamnområdet.
Parameteregenskaper
| Typ: | SwitchParameter |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
list
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Locale
Anger önskat språk för WMI-objekt. Ange ett värde i MS_<LCID> format.
Parameteregenskaper
| Typ: | String |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Namespace
När den används med parametern Class anger parametern Namespace den WMI-lagringsplatsnamnrymd där den angivna WMI-klassen finns. När den används med parametern List anger den det namnområde som WMI-klassinformation ska samlas in från.
Parameteregenskaper
| Typ: | String |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
| Alias: | NS |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Property
Anger de WMI-klassegenskaper som den här cmdleten hämtar information från. Ange egenskapsnamnen.
Parameteregenskaper
| Typ: | String[] |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
query
| Position: | 1 |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Query
Kör den angivna WMI Query Language-instruktionen (WQL). Den här parametern stöder inte händelsefrågor.
Parameteregenskaper
| Typ: | String |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
WQLQuery
| Position: | Named |
| Obligatorisk: | True |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-Recurse
Söker i det aktuella namnområdet och alla andra namnområden efter det klassnamn som anges av parametern Class.
Parameteregenskaper
| Typ: | SwitchParameter |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
list
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
-ThrottleLimit
Anger det maximala antalet WMI-åtgärder som kan köras samtidigt. Den här parametern är endast giltig när parametern AsJob används i kommandot .
Parameteregenskaper
| Typ: | Int32 |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
CommonParameters
Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.
Indata
None
Du kan inte skicka indata till Get-WmiObject.
Utdata
PSObject or System.Management.Automation.RemotingJob
När du använder parametern AsJob returnerar cmdleten ett jobbobjekt. Annars beror det objekt som Get-WmiObject returnerar på värdet för parametern Class.
Kommentarer
Windows PowerShell innehåller följande alias för Get-WmiObject:
gwmi
För att få åtkomst till WMI-information på en fjärrdator måste cmdleten köras under ett konto som är medlem i den lokala administratörsgruppen på fjärrdatorn. Eller så kan standardåtkomstkontrollen på WMI-namnområdet för fjärrlagringsplatsen ändras för att ge åtkomstbehörighet till andra konton.
Endast vissa av egenskaperna för varje WMI-klass visas som standard. Den uppsättning egenskaper som visas för varje WMI-klass anges i Types.ps1xml konfigurationsfilen. Om du vill hämta alla egenskaper för ett WMI-objekt använder du cmdletarna Get-Member eller Format-List.