Remove-WmiObject

Löscht eine Instanz einer vorhandenen Klasse der Windows-Verwaltungsinstrumentation (Windows Management Instrumentation, WMI).

Syntax

Remove-WmiObject
      [-Class] <String>
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      -InputObject <ManagementObject>
      [-AsJob]
      [-ThrottleLimit <Int32>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      -Path <String>
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Beschreibung

Das Remove-WmiObject Cmdlet löscht eine Instanz einer vorhandenen Windows-Verwaltungsinstrumentation (WMI)-Klasse.

Beispiele

Beispiel 1: Schließen aller Instanzen eines Win32-Prozesses

notepad
$np = Get-WmiObject -Query "select * from win32_process where name='notepad.exe'"
$np | Remove-WmiObject

In diesem Beispiel werden alle Instanzen von Editor.exe geschlossen.

Der erste Befehl startet eine Instanz von Editor.

Der zweite Befehl verwendet das Cmdlet Get-WmiObject, um die Instanzen der Win32_Process abzurufen, die Editor.exe entsprechen, und speichert sie dann in der $np Variablen.

Der dritte Befehl übergibt das Objekt in der $np VariablenRemove-WmiObject, an die alle Instanzen von Editor.exe gelöscht werden.

Beispiel 2: Löschen eines Ordners

Mit diesem Befehl wird der Ordner "C:\Test" gelöscht.

$a = Get-WMIObject -Query "Select * From Win32_Directory Where Name ='C:\\Test'"
$a | Remove-WMIObject

Der erste Befehl verwendet Get-WMIObject zum Abfragen des C:\Test Ordners und speichert dann das Objekt in der $a Variablen.

Der zweite Befehl übergibt die $a Variable an Remove-WMIObject, in der der Ordner gelöscht wird.

Parameter

-AsJob

Gibt an, dass dieses Cmdlet als Hintergrundauftrag ausgeführt wird. Verwenden Sie diesen Parameter, um Befehle auszuführen, deren Ausführung viel Zeit in Anspruch nimmt.

Mit den neuen in Windows PowerShell 3.0 eingeführten CIM-Cmdlets werden die gleichen Aufgaben wie mit WMI-Cmdlets ausgeführt. Die CIM-Cmdlets entsprechen den WS-Management -Standards (WSMan) und dem Standard Common Information Model (CIM), mit dem die Cmdlets dieselben Techniken zum Verwalten von Computern verwenden können, die das Windows-Betriebssystem und andere Betriebssysteme ausführen. Verwenden Sie anstelle der Verwendung Remove-WmiObjectdas Cmdlet Remove-CimInstance.

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 er 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 "Auftrag " (die Cmdlets "Auftrag ") enthalten. Verwenden Sie das Receive-Job Cmdlet, um die Auftragsergebnisse abzurufen.

Um diesen Parameter für Remotecomputer zu verwenden, müssen die lokalen und Remotecomputer für Remoting konfiguriert werden. Starten Sie Windows PowerShell mithilfe der Option "Als Administrator ausführen". Weitere Informationen finden Sie unter about_Remote_Requirements.

Weitere Informationen zu Windows PowerShell-Hintergrundaufträgen finden Sie unter about_Jobs und about_Remote_Jobs.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

Gibt die für die WMI-Verbindung zu verwendende Authentifizierungsebene an. Zulässige Werte für diesen Parameter:

  • -1:Unverändert.
  • 0: Standard.
  • 1:Nichts. Es wurde keine Authentifizierung ausgeführt.
  • 2: Verbinden. Die Authentifizierung wird nur ausgeführt, wenn der Client eine Beziehung mit der Anwendung herstellt.
  • 3:Aufrufen. Die Authentifizierung erfolgt nur zu Beginn jedes Anrufs, wenn die Anwendung die Anforderung empfängt.
  • 4:Paket. Die Authentifizierung erfolgt für alle Daten, 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 Authentifizierungsstufen werden verwendet, und alle Daten werden verschlüsselt.
Type:AuthenticationLevel
Accepted values:Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authority

Gibt die Autorität an, die zum Authentifizieren der WMI-Verbindung verwendet werden soll. Sie können die Standard-NTLM- oder Kerberos-Authentifizierung angeben. Um NTLM zu verwenden, legen Sie die Autoritätseinstellung auf ntlmdo Standard:<Do Standard Name fest, wobei <Do Standard Name>> einen gültigen NTLM-Do Standard namen identifiziert. Geben Sie kerberos:<Do Standard Name>\<ServerName> an, um Kerberos zu verwenden. Sie können die Authority-Einstellung nicht einschließen, wenn Sie eine Verbindung mit dem lokalen Computer herstellen.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Class

Gibt den Namen einer WMI-Klasse an, die dieses Cmdlet löscht.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Gibt den Namen des Computers an, auf dem dieses Cmdlet ausgeführt wird. Die Standardeinstellung ist der lokale Computer.

Geben Sie den NetBIOS-Namen, eine IP-Adresse oder den vollqualifizierten Domänennamen eines Computers oder mehrerer Computer ein. Um den lokalen Computer anzugeben, geben Sie den Computernamen, einen Punkt (.) oder localhost ein.

Dieser Parameter beruht nicht auf Windows PowerShell-Remoting. Sie können den Parameter "ComputerName " auch dann verwenden, wenn Ihr Computer nicht für die Ausführung von Remotebefehlen konfiguriert ist.

Type:String[]
Aliases:Cn
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

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" oder "Do Standard 01\User01", oder geben Sie ein PSCredential-Objekt ein, z. B. ein objekt, das Get-Credential vom Cmdlet generiert wurde. Wenn Sie einen Benutzernamen eingeben, werden Sie von diesem Cmdlet aufgefordert, ein Kennwort einzugeben.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableAllPrivileges

Gibt an, dass dieses Cmdlet alle Berechtigungen des aktuellen Benutzers aktiviert, bevor der Befehl ausgeführt wird, der den WMI-Aufruf vorgibt.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Impersonation

Gibt die zu verwendende Identitätswechselebene an. Zulässige Werte für diesen Parameter:

  • 0: Standard. Liest die lokale Registrierung für die Standardidentitätswechselebene, die in der Regel auf 3 festgelegt ist: Identitätswechsel.
  • 1:Anonym. Verbirgt die Anmeldeinformationen des Aufrufers.
  • 2:Identifizieren. Ermöglicht es Objekten, die Anmeldeinformationen des Aufrufers abzufragen.
  • 3:Identität. Ermöglicht es Objekten, die Anmeldeinformationen des Aufrufers zu verwenden.
  • 4:Delegieren. Ermöglicht es Objekten, anderen Objekten die Verwendung der Anmeldeinformationen des Aufrufers zu gestatten.
Type:ImpersonationLevel
Accepted values:Default, Anonymous, Identify, Impersonate, Delegate
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Gibt ein ManagementObject-Objekt an, das als Eingabe verwendet werden soll. Wenn dieser Parameter verwendet wird, werden alle anderen Parameter ignoriert.

Type:ManagementObject
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Locale

Gibt das bevorzugte Gebietsschema für WMI-Objekte an. Der Parameter "Locale " wird als Array im MS_<LCID-Format> in der bevorzugten Reihenfolge angegeben.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Namespace

Gibt den WMI-Repositorynamespace an, in dem sich die referenzierte WMI-Klasse befindet, wenn sie mit dem Parameter "Class " verwendet wird.

Type:String
Aliases:NS
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Gibt den WMI-Objektpfad einer WMI-Klasse oder den WMI-Objektpfad einer Instanz einer zu löschenden WMI-Klasse an.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ThrottleLimit

Gibt die maximale Anzahl von gleichzeitigen Verbindungen an, die zum Ausführen dieses Befehls hergestellt 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.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Eingaben

ManagementObject

Sie können ein Verwaltungsobjekt an dieses Cmdlet weiterleiten.

Ausgaben

None, System.Management.Automation.RemotingJob

Dieses Cmdlet gibt ein Auftragsobjekt zurück, wenn Sie den AsJob-Parameter angeben. Andernfalls wird keine Ausgabe generiert.

Hinweise

Windows PowerShell enthält die folgenden Aliase für Remove-WmiObject:

  • rwmi