Get-WmiObject
Hiermee haalt u exemplaren van WMI-klassen (Windows Management Instrumentation) op of informatie over de beschikbare klassen.
Syntax
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>]
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>]
Get-WmiObject
[-Amended]
[-DirectRead]
-Query <String>
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[<CommonParameters>]
Get-WmiObject
[-Amended]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[<CommonParameters>]
Get-WmiObject
[-Amended]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[<CommonParameters>]
Description
Vanaf PowerShell 3.0 is deze cmdlet vervangen door Get-CimInstance.
De Get-WmiObject cmdlet haalt exemplaren van WMI-klassen of informatie over de beschikbare WMI-klassen op. Als u een externe computer wilt opgeven, gebruikt u de parameter ComputerName . Als de parameter List is opgegeven, krijgt de cmdlet informatie over de WMI-klassen die beschikbaar zijn in een opgegeven naamruimte. Als de queryparameter is opgegeven, voert de cmdlet een WMI-querytaal -instructie (WQL) uit.
De Get-WmiObject cmdlet gebruikt geen externe Windows PowerShell externe bewerkingen uit te voeren.
U kunt de parameter ComputerName van de Get-WmiObject cmdlet gebruiken, zelfs als uw computer niet voldoet aan de vereisten voor Windows PowerShell externe toegang of niet is geconfigureerd voor externe communicatie in Windows PowerShell.
Vanaf Windows PowerShell 3.0 heeft de __Server eigenschap van het object dat Get-WmiObject retourneert een PSComputerName-alias. Dit maakt het gemakkelijker om de naam van de broncomputer op te nemen in uitvoer en rapporten.
Voorbeelden
Voorbeeld 1: Processen ophalen op de lokale computer
In dit voorbeeld worden de processen op de lokale computer weergegeven.
Get-WmiObject -Class Win32_Process
Voorbeeld 2: Hiermee haalt u services op een externe computer op
In dit voorbeeld worden de services op een externe computer opgeslagen. De parameter ComputerName geeft het IP-adres van een externe computer op. Standaard moet het huidige gebruikersaccount lid zijn van de groep Administrators op de externe computer.
Get-WmiObject -Class Win32_Service -ComputerName 10.1.4.62
Voorbeeld 3: WMI-klassen ophalen in de hoofd- of standaardnaamruimte van de lokale computer
In dit voorbeeld worden de WMI-klassen opgehaald in de hoofd- of standaardnaamruimte van de lokale computer.
Get-WmiObject -Namespace "root/default" -List
Voorbeeld 4: Een benoemde service ophalen op meerdere computers
In dit voorbeeld wordt de WinRM-service opgehaald op de computers die zijn opgegeven door de waarde van de parameter 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
Een pijplijnoperator (|) verzendt de uitvoer naar de Format-List cmdlet, waarmee de eigenschap PSComputerName wordt toegevoegd aan de standaarduitvoer. PSComputerName is een alias van de eigenschap __Server van de objecten die Get-WmiObject worden geretourneerd. Deze alias is geïntroduceerd in PowerShell 3.0.
Voorbeeld 5: Een service stoppen op een externe computer
In dit voorbeeld wordt de WinRM-service op een externe computer gestopt. Get-WmiObject haalt het exemplaar van het WinRM-serviceobject op Server01 op. Vervolgens wordt de StopService-methode van de Win32_Service WMI-klasse op dat object aangeroepen.
(Get-WmiObject -Class Win32_Service -Filter "name='WinRM'" -ComputerName Server01).StopService()
Dit komt overeen met het gebruik van de Stop-Service cmdlet.
Voorbeeld 6: het BIOS ophalen op de lokale computer
In dit voorbeeld worden de BIOS-gegevens opgehaald van de lokale computer. De eigenschapsparameter van de Format-List cmdlet wordt gebruikt om alle eigenschappen van het geretourneerde object in een lijst weer te geven. Standaard worden alleen de subset eigenschappen weergegeven die in het Types.ps1xml configuratiebestand zijn gedefinieerd.
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 :
Voorbeeld 7: De services op een externe computer ophalen
In dit voorbeeld wordt de referentieparameter van de Get-WmiObject cmdlet gebruikt om de services op een externe computer op te halen. De waarde van de referentieparameter is een gebruikersnaam. De gebruiker wordt om een wachtwoord gevraagd.
Get-WmiObject Win32_Service -Credential FABRIKAM\administrator -ComputerName Fabrikam
Notitie
Referenties kunnen niet worden gebruikt bij het instellen van de lokale computer.
Parameters
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de objecten die worden geretourneerd door WMI gewijzigde informatie moeten bevatten. Gewijzigde informatie is doorgaans lokaliseerbare informatie, zoals object- en eigenschapsbeschrijvingen, die is gekoppeld aan het WMI-object.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Voert de opdracht uit als achtergrondtaak. Gebruik deze parameter om opdrachten uit te voeren die lang duren.
Wanneer u de parameter AsJob gebruikt, retourneert de opdracht een object dat de achtergrondtaak vertegenwoordigt en wordt vervolgens de opdrachtprompt weergegeven. U kunt blijven werken in de sessie terwijl de taak is voltooid. Als Get-WmiObject deze wordt gebruikt op een externe computer, wordt de taak gemaakt op de lokale computer en worden de resultaten van externe computers automatisch geretourneerd naar de lokale computer. Als u de taak wilt beheren, gebruikt u de cmdlets die het Job zelfstandig naamwoord bevatten. Gebruik de Receive-Job cmdlet om de taakresultaten op te halen.
Notitie
Als u deze parameter wilt gebruiken met externe computers, moeten de lokale en externe computers worden geconfigureerd voor externe communicatie. Daarnaast moet u Windows PowerShell starten met behulp van de optie Uitvoeren als administrator in Windows Vista en latere versies van Windows. Zie about_Remote_Requirements voor meer informatie.
Zie about_Jobs en about_Remote_Jobs voor meer informatie over Windows PowerShell achtergrondtaken.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u het verificatieniveau op dat moet worden gebruikt met de WMI-verbinding. Geldige waarden zijn:
-1: Ongewijzigd0: Standaard1: Geen (geen verificatie uitgevoerd.)2: Verbinding maken (verificatie wordt alleen uitgevoerd wanneer de client een relatie tot stand brengt met de toepassing.)3: Aanroep (verificatie wordt alleen aan het begin van elke aanroep uitgevoerd wanneer de toepassing de aanvraag ontvangt.)4: Pakket (verificatie wordt uitgevoerd op alle gegevens die van de client worden ontvangen.)5: PacketIntegrity (alle gegevens die worden overgedragen tussen de client en de toepassing, worden geverifieerd en geverifieerd.)6: PacketPrivacy (De eigenschappen van de andere verificatieniveaus worden gebruikt en alle gegevens worden versleuteld.)
| Type: | AuthenticationLevel |
| Accepted values: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u de instantie die moet worden gebruikt om de WMI-verbinding te verifiëren. U kunt standaard NTLM- of Kerberos-verificatie opgeven. Als u NTLM wilt gebruiken, stelt u de instantie-instelling ntlmdomain:<DomainName>in op , waarbij <DomainName> een geldige NTLM-domeinnaam wordt geïdentificeerd. Als u Kerberos wilt gebruiken, geeft u kerberos:<DomainName>\<ServerName>op. U kunt de instantie-instelling niet opnemen wanneer u verbinding maakt met de lokale computer.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u de naam van een WMI-klasse. Wanneer deze parameter wordt gebruikt, haalt de cmdlet exemplaren van de WMI-klasse op.
| Type: | String |
| Aliases: | ClassName |
| Position: | 1 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u de doelcomputer voor de beheerbewerking. Voer een FQDN (Fully Qualified Domain Name), een NetBIOS-naam of een IP-adres in. Wanneer de externe computer zich in een ander domein bevindt dan de lokale computer, is de volledig gekwalificeerde domeinnaam vereist.
Standaard is dit de lokale computer. Als u de lokale computer wilt opgeven, zoals in een lijst met computernamen, gebruikt localhostu de naam van de lokale computer of een punt (.).
Deze parameter is niet afhankelijk van Windows PowerShell externe communicatie, die gebruikmaakt van WS-Management. U kunt de computernaamparameter gebruiken, Get-WmiObject zelfs als uw computer niet is geconfigureerd voor het uitvoeren van WS-Management externe opdrachten.
| Type: | String[] |
| Aliases: | Cn |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u een gebruikersaccount op dat gemachtigd is om deze actie uit te voeren. Standaard is dit de huidige gebruiker. Typ een gebruikersnaam, zoals User01, Domain01\User01of User@Contoso.com. Of voer een PSCredential-object in, zoals een object dat wordt geretourneerd door de Get-Credential cmdlet. Wanneer u een gebruikersnaam typt, wordt u gevraagd om een wachtwoord. Referenties kunnen niet worden gebruikt bij het instellen van de lokale computer.
| Type: | PSCredential |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u op of directe toegang tot de WMI-provider wordt aangevraagd voor de opgegeven klasse, zonder rekening te houden met de basisklasse of de afgeleide klassen.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee schakelt u alle bevoegdheden van de huidige gebruiker in voordat de opdracht de WMI-aanroep uitvoert.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u een Where-component op die moet worden gebruikt als filter. Gebruikt de syntaxis van de WMI-querytaal (WQL).
Belangrijk
Neem niet het trefwoord Where op in de waarde van de parameter. Met de volgende opdrachten worden bijvoorbeeld alleen de logische schijven geretourneerd met een DeviceID van c: en services met de naam WinRM zonder het trefwoord Where te gebruiken.
Get-WmiObject Win32_LogicalDisk -filter "DeviceID = 'c:' "
Get-WmiObject win32_service -filter "name='WinRM'"
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u het imitatieniveau op dat moet worden gebruikt.
De aanvaardbare waarden voor deze parameter zijn:
0: standaard. Leest het lokale register voor het standaard-imitatieniveau. De standaardwaarde is meestal ingesteld op imiteren.1: Anoniem. Hiermee worden de referenties van de beller verborgen.2: Identificeren. Hiermee kunnen objecten query's uitvoeren op de referenties van de aanroeper.3: imiteren. Hiermee kunnen objecten de referenties van de aanroeper gebruiken.4: Gemachtigde. Hiermee kunnen objecten andere objecten toestaan de referenties van de aanroeper te gebruiken.
| Type: | ImpersonationLevel |
| Accepted values: | Default, Anonymous, Identify, Impersonate, Delegate |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee haalt u de namen van de WMI-klassen op in de naamruimte van de WMI-opslagplaats die is opgegeven door de parameter Naamruimte .
Als u de parameter List opgeeft, maar niet de parameter Naamruimte , gebruikt u Get-WmiObject standaard de root\Cimv2-naamruimte . Deze cmdlet gebruikt niet de registervermelding Default Namespace in de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\Scripting registersleutel om de standaardnaamruimte te bepalen.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u de voorkeursinstelling voor WMI-objecten. Voer een waarde in indeling in MS_<LCID> .
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Wanneer deze wordt gebruikt met de klasseparameter , geeft de parameter Naamruimte de naamruimte van de WMI-opslagplaats op waar de opgegeven WMI-klasse zich bevindt. Wanneer deze wordt gebruikt met de parameter List , geeft deze de naamruimte op waaruit WMI-klassegegevens moeten worden verzameld.
| Type: | String |
| Aliases: | NS |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u de WMI-klasse-eigenschappen op waaruit deze cmdlet informatie ophaalt. Voer de eigenschapsnamen in.
| Type: | String[] |
| Position: | 1 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee wordt de opgegeven WMI Query Language-instructie (WQL) uitgevoerd. Deze parameter biedt geen ondersteuning voor gebeurtenisquery's.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Zoekt in de huidige naamruimte en alle andere naamruimten naar de klassenaam die is opgegeven door de klasseparameter.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u het maximum aantal WMI-bewerkingen op dat gelijktijdig kan worden uitgevoerd. Deze parameter is alleen geldig wanneer de AsJob-parameter wordt gebruikt in de opdracht.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Invoerwaarden
None
U kunt invoer niet doorsluisen naar Get-WmiObject.
Uitvoerwaarden
PSObject or System.Management.Automation.RemotingJob
Wanneer u de parameter AsJob gebruikt, retourneert de cmdlet een taakobject. Anders is het object dat Get-WmiObject wordt geretourneerd afhankelijk van de waarde van de klasseparameter .
Notities
Voor toegang tot WMI-informatie op een externe computer moet de cmdlet worden uitgevoerd onder een account dat lid is van de lokale beheerdersgroep op de externe computer. Of het standaardtoegangsbeheer op de WMI-naamruimte van de externe opslagplaats kan worden gewijzigd om toegangsrechten te verlenen aan andere accounts.
Standaard worden slechts enkele eigenschappen van elke WMI-klasse weergegeven. De set eigenschappen die voor elke WMI-klasse worden weergegeven, wordt opgegeven in het Types.ps1xml configuratiebestand. Als u alle eigenschappen van een WMI-object wilt ophalen, gebruikt u de Get-Member of Format-List cmdlets.
Verwante koppelingen
Feedback
Feedback verzenden en weergeven voor