Löscht eine Instanz einer vorhandenen WMI-Klasse (Windows Management Instrumentation, Windows-Verwaltungsinstrumentation).
Syntax
Remove-WmiObject [-Klasse] <string> [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>] Remove-WmiObject [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>] Remove-WmiObject -InputObject <ManagementObject> [-AsJob] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>] Remove-WmiObject -Path <string> [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>] Remove-WmiObject [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>] Remove-WmiObject [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>]
Beschreibung
Das Cmdlet "Remove-WmiObject" löscht eine Instanz einer vorhandenen WMI-Klasse.
Parameter
-AsJob
Führt den Befehl als Hintergrundauftrag aus. Verwenden Sie diesen Parameter, um Befehle auszuführen, deren Ausführung viel Zeit in Anspruch nimmt.
Führt den Befehl als Hintergrundauftrag aus. Verwenden Sie diesen Parameter, um Befehle auszuführen, deren Ausführung viel Zeit in Anspruch nimmt.
Wenn Sie den AsJob-Parameter verwenden, gibt der Befehl ein Objekt zurück, das den Hintergrundauftrag darstellt, und zeigt dann die Eingabeaufforderung an. Sie können die Sitzung weiterhin verwenden, während der Auftrag abgeschlossen wird. Wenn Remove-WmiObject für einen Remotecomputer verwendet wird, wird der Auftrag auf dem lokalen Computer erstellt, und die Ergebnisse von Remotecomputern werden automatisch an den lokalen Computer zurückgegeben. Verwenden Sie zum Verwalten des Auftrags die Cmdlets, die das Substantiv "Job" enthalten (die Job-Cmdlets). Um die Auftragsergebnisse abzurufen, verwenden Sie das Cmdlet "Receive-Job".
Hinweis: Um diesen Parameter für Remotecomputer zu verwenden, müssen lokale Computer und Remotecomputer für Remoting konfiguriert werden. Außerdem müssen Sie Windows PowerShell in Windows Vista und höheren Versionen von Windows mit der Option "Als Administrator ausführen" starten. Weitere Informationen finden Sie unter "about_Remote_Requirements".
Weitere Informationen über Windows PowerShell-Hintergrundaufträge finden Sie unter "about_Jobs" und "about_Remote_Jobs".
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Authentication <AuthenticationLevel>
Gibt die für die WMI-Verbindung zu verwendende Authentifizierungsebene an. Gültige Werte:
-1: Unchanged
0: Default
1: None (Es wird keine Authentifizierung ausgeführt.)
2: Connect (Die Authentifizierung wird nur ausgeführt, wenn der Client eine Beziehung mit der Anwendung herstellt.)
3: Call (Die Authentifizierung wird nur zu Beginn eines Aufrufs ausgeführt, wenn die Anwendung die Anforderung empfängt.)
4: Packet (Die Authentifizierung wird für alle Daten ausgeführt, die vom Client empfangen werden.)
5: PacketIntegrity (Alle Daten, die zwischen dem Client und der Anwendung übertragen werden, werden authentifiziert und überprüft.)
6: PacketPrivacy (Die Eigenschaften der anderen Authentifizierungsebenen werden verwendet, und alle Daten werden verschlüsselt.)
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Authority <string>
Gibt die Autorität an, die zum Authentifizieren der WMI-Verbindung verwendet werden soll. Sie können die Standard-NTLM- oder Kerberos-Authentifizierung angeben. Legen Sie für die Verwendung von NTLM die Authority-Einstellung auf "ntlmdomain:<Domänenname>" fest, wobei <Domänenname> einen gültigen NTLM-Domänennamen darstellt. Geben Sie für die Verwendung von Kerberos "kerberos:<Domänenname>\<Servername>" an. Sie können die Authority-Einstellung nicht einschließen, wenn Sie eine Verbindung mit dem lokalen Computer herstellen.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Klasse <string>
Gibt den Namen einer WMI-Klasse an, die Sie löschen möchten.
Erforderlich? |
true |
Position? |
1 |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-ComputerName <string[]>
Gibt den Computer an, für den der Verwaltungsvorgang ausgeführt werden soll. Bei dem Wert kann es sich um einen vollqualifizierten Domänennamen, einen NetBIOS-Namen oder eine IP-Adresse handeln. Um den Namen des lokalen Computers anzugeben, verwenden Sie den Computernamen, "localhost" oder einen Punkt (.). Der lokale Computer ist der Standardwert. Wenn sich der Remotecomputer in einer anderen Domäne als der Benutzer befindet, müssen Sie einen vollqualifizierten Domänennamen verwenden. Sie können den Wert für diesen Parameter festlegen, indem Sie den Wert über die Pipeline an den Parameter übergeben.
Dieser Parameter beruht nicht auf Windows PowerShell-Remoting, bei dem die WS-Verwaltung verwendet wird. Sie können den ComputerName-Parameter von Get-WmiObject auch dann verwenden, wenn der Computer nicht für das Ausführen von Remotebefehlen der WS-Verwaltung konfiguriert ist.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Credential <PSCredential>
Gibt ein Benutzerkonto an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Der Standardwert ist der aktuelle Benutzer. Geben Sie einen Benutzernamen ein, z. B. "User01", "Domain01\User01" oder "User@Contoso.com". Oder geben Sie ein PSCredential-Objekt ein, z. B. ein Objekt, das vom Cmdlet "Get-Credential" zurückgegeben wird. Wenn Sie einen Benutzernamen eingeben, werden Sie zur Eingabe eines Kennworts aufgefordert.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-EnableAllPrivileges
Aktiviert alle Berechtigungen des aktuellen Benutzers, bevor der Befehl den WMI-Aufruf ausführt.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Impersonation <ImpersonationLevel>
Gibt die zu verwendende Identitätswechselebene an. Gültige Werte:
0: Default (Liest die lokale Registrierung für die Standard-Identitätswechselebene, die normalerweise auf "3: Impersonate" festgelegt ist.)
1: Anonymous (Verbirgt die Anmeldeinformationen des Aufrufers.)
2: Identify (Ermöglicht es Objekten, die Anmeldeinformationen des Aufrufers abzufragen.)
3: Impersonate (Ermöglicht es Objekten, die Anmeldeinformationen des Aufrufers zu verwenden.)
4: Delegate (Ermöglicht es Objekten, anderen Objekten die Verwendung der Anmeldeinformationen des Aufrufers zu gestatten.)
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-InputObject <ManagementObject>
Gibt ein ManagementObject-Objekt an, das als Eingabe verwendet werden soll. Wenn dieser Parameter verwendet wird, werden alle anderen Parameter ignoriert.
Erforderlich? |
true |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
true (ByValue) |
Platzhalterzeichen akzeptieren? |
false |
-Locale <string>
Gibt das bevorzugte Gebietsschema für WMI-Objekte an. Der Locale-Parameter wird als Array im Format "MS_<LCID>" in der gewünschten Reihenfolge angegeben.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Namespace <string>
Bei Verwendung mit dem Class-Parameter gibt dieser Parameter den WMI-Repositorynamespace an, in dem sich die WMI-Klasse befindet, auf die verwiesen wird.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Path <string>
Gibt den WMI-Objektpfad einer WMI-Klasse oder den WMI-Objektpfad einer Instanz einer zu löschenden WMI-Klasse an.
Erforderlich? |
true |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-ThrottleLimit <int>
Hiermit kann der Benutzer einen Einschränkungswert für die Anzahl von WMI-Vorgängen angeben, die gleichzeitig ausgeführt werden können. Dieser Parameter wird zusammen mit dem AsJob-Parameter verwendet. Die Drosselungsgrenze gilt nur für den aktuellen Befehl und nicht für die Sitzung oder den Computer.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Bestätigung
Fordert Sie vor der Ausführung des Befehls zur Bestätigung auf.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-WhatIf
Beschreibt die Auswirkungen einer Ausführung des Befehls, ohne den Befehl tatsächlich auszuführen.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
<CommonParameters>
Dieses Cmdlet unterstützt die folgenden allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer und -OutVariable. Weitere Informationen finden Sie unter about_Commonparameters.
Eingaben und Ausgaben
Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können. Der Rückgabetyp ist der Typ der Objekte, die das Cmdlet zurückgibt.
Eingaben |
System.Management.ManagementObject Sie können ein Verwaltungsobjekt über die Pipeline an Remove-WmiObject übergeben. |
Ausgaben |
Keiner oder System.Management.Automation.RemotingJob Wenn Sie den AsJob-Parameter verwenden, wird von diesem Cmdlet ein Auftragsobjekt zurückgegeben. Andernfalls wird keine Ausgabe generiert. |
Beispiel 1
C:\PS>notepad C:\PS> $np = get-wmiobject -query "select * from win32_process where name='notepad.exe'" C:\PS> $np | remove-wmiobject Beschreibung ----------- Mit diesem Befehl werden alle Instanzen von "Notepad.exe" geschlossen. Der erste Befehl startet eine Instanz von Editor. Der zweite Befehl verwendet das Cmdlet "Get-WmiObject", um die Instanzen von Win32_Process abzurufen, die "Notepad.exe" entsprechen, und speichert sie in der Variablen "$np". Der dritte Befehl übergibt das Objekt in der Variablen "$np" an das Cmdlet "Remove-WmiObject", das alle Instanzen von "Notepad.exe" löscht.
Beispiel 2
C:\PS>$a = Get-WMIObject -query "Select * From Win32_Directory Where Name ='C:\\Test'" C:\PS> $a | Remove-WMIObject Beschreibung ----------- Mit diesem Befehl wird das Verzeichnis "C:\Test" gelöscht. Der erste Befehl verwendet das Cmdlet "Get-WMIObject", um das Verzeichnis "C:\Test" abzurufen, und speichert dann das Objekt in der Variablen "$a". Der zweite Befehl übergibt die Variable "$a" über die Pipeline an Remove-WMIObject, wodurch das Verzeichnis gelöscht wird.
Siehe auch