Compartir a través de


Remove-WmiObject

Elimina una instancia de una clase existente de Instrumental de administración de Windows (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>]

Description

El cmdlet Remove-WmiObject elimina una instancia de una clase existente de Instrumental de administración de Windows (WMI).

Ejemplos

Ejemplo 1: Cerrar todas las instancias de un proceso de Win32

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

En este ejemplo se cierran todas las instancias de Notepad.exe.

El primer comando inicia una instancia del Bloc de notas.

El segundo comando usa el cmdlet Get-WmiObject para recuperar las instancias de la Win32_Process que corresponden a Notepad.exe y, a continuación, las almacena en la variable $np.

El tercer comando pasa el objeto de la variable $np a Remove-WmiObject, que elimina todas las instancias de Notepad.exe.

Ejemplo 2: Eliminación de una carpeta

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

Este comando elimina la carpeta C:\Test.

El primer comando usa Get-WMIObject para consultar la carpeta C:\Test y, a continuación, almacena el objeto en la variable $a.

El segundo comando canaliza la variable $a a Remove-WMIObject, que elimina la carpeta.

Parámetros

-AsJob

Indica que este cmdlet se ejecuta como un trabajo en segundo plano. Use este parámetro para ejecutar comandos que tardan mucho tiempo en finalizar.

Los nuevos cmdlets de CIM, que se introdujeron con Windows PowerShell 3.0, realizan las mismas tareas que los cmdlets de WMI. Los cmdlets CIM cumplen con los estándares WS-Management (WSMan) y con el estándar Common Information Model (CIM), lo que permite a los cmdlets usar las mismas técnicas para administrar equipos que ejecutan el sistema operativo Windows y los que ejecutan otros sistemas operativos. En lugar de usar Remove-WmiObject, considere la posibilidad de usar el cmdlet Remove-CimInstancehttps://go.microsoft.com/fwlink/?LinkId=227964 .

Cuando use el parámetro AsJob, el comando devuelve un objeto que representa el trabajo en segundo plano y, luego, muestra el símbolo del sistema. Puede seguir trabajando en la sesión mientras finaliza el trabajo. Si remove-WmiObject se usa en un equipo remoto, el trabajo se crea en el equipo local y los resultados de los equipos remotos se devuelven automáticamente al equipo local. Para administrar el trabajo, use los cmdlets que contienen el nombre job (los cmdlets job ). Para obtener los resultados del trabajo, use el cmdlet Receive-Job.

Para usar este parámetro para equipos remotos, los equipos locales y remotos deben configurarse para la comunicación remota. Inicie Windows PowerShell mediante la opción Ejecutar como administrador. Para obtener más información, consulte about_Remote_Requirements.

Para obtener más información sobre Windows PowerShell trabajos en segundo plano, consulte about_Jobs y about_Remote_Jobs.

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

-Authentication

Especifica el nivel de autenticación que se usa con la conexión de WMI. Los valores permitidos para este parámetro son los siguientes:

  • -1: Sin cambios.
  • 0: Valor predeterminado.
  • 1: Ninguno. No se realizó ninguna autenticación.
  • 2: Conectar. La autenticación solo se realiza cuando el cliente establece una relación con la aplicación.
  • 3: Llamada. La autenticación solo se realiza al principio de cada llamada cuando la aplicación recibe la solicitud.
  • 4: Paquete. La autenticación se realiza en todos los datos recibidos del cliente.
  • 5: PacketIntegrity. Todos los datos que se transfieren entre el cliente y la aplicación se autentican y comprueban.
  • 6: PacketPrivacy. Se usan las propiedades de los demás niveles de autenticación y todos los datos se cifran.
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

Especifica la autoridad que se usará para autenticar la conexión WMI. Puede especificar la autenticación NTLM o Kerberos estándar. Para usar NTLM, establezca la configuración de autoridad en ntlmdomain:<DomainName>, donde <DomainName> identifica un nombre de dominio NTLM válido. Para usar Kerberos, especifique kerberos:<DomainName>\<ServerName>. No puede incluir la configuración de autoridad al conectarse al equipo local.

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

-Class

Especifica el nombre de una clase WMI que elimina este cmdlet.

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

-ComputerName

Especifica el nombre del equipo en el que se ejecuta este cmdlet. La opción predeterminada es el equipo local.

Escriba el nombre NetBIOS, una dirección IP o un nombre de dominio completo de uno o más equipos. Para especificar el equipo local, escriba el nombre del equipo, un punto (.) o localhost.

Este parámetro no utiliza la comunicación remota de Windows PowerShell. Puede usar el parámetro ComputerName, incluso aunque el equipo no esté configurado para ejecutar comandos remotos.

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

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

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

-Credential

Especifica una cuenta de usuario con permiso para realizar esta acción. El valor predeterminado es el usuario actual.

Escriba un nombre de usuario, como User01 o Domain01\User01, o escriba un objeto PSCredential , como uno generado por el cmdlet Get-Credential. Si escribe un nombre de usuario, este cmdlet le pedirá una contraseña.

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

-EnableAllPrivileges

Indica que este cmdlet habilita todos los permisos del usuario actual antes del comando que realiza la llamada WMI.

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

-Impersonation

Especifica el nivel de suplantación que usar. Los valores permitidos para este parámetro son los siguientes:

  • 0: Valor predeterminado. Lee el registro local para el nivel de suplantación predeterminado, que normalmente se establece en 3: Suplantar.
  • 1: Anónimo. Oculta las credenciales de la persona que llama.
  • 2: Identificar. Permite que los objetos consulten las credenciales de la persona que llama.
  • 3: Suplantar. permite que los objetos usen las credenciales de la persona que llama.
  • 4: Delegado. Permite que los objetos dejen que otros objetos usen las credenciales de la persona que llama.
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

Especifica un objeto ManagementObject que se va a usar como entrada. Cuando se usa este parámetro, se omite el resto de parámetros.

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

-Locale

Especifica la configuración regional preferida para objetos WMI. El parámetro Locale se especifica como una matriz en el formato MS_<LCID> en el orden preferido.

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

-Namespace

Especifica el espacio de nombres del repositorio WMI donde se encuentra la clase WMI a la que se hace referencia cuando se usa con el parámetro Class .

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

-Path

Especifica la ruta de acceso del objeto de WMI de una clase de WMI o especifica la ruta de acceso del objeto de WMI de una instancia de una clase de WMI que se va a eliminar.

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

-ThrottleLimit

Especifica el número máximo de operaciones simultáneas que se pueden establecer para ejecutar este comando. Este parámetro se usa junto con el parámetro AsJob . El límite solo se aplica al comando actual, no a la sesión ni al equipo.

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

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

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

Entradas

ManagementObject

Puede canalizar un objeto de administración a este cmdlet.

Salidas

None, System.Management.Automation.RemotingJob

Este cmdlet devuelve un objeto de trabajo, si especifica el parámetro AsJob . De lo contrario, este cmdlet no genera resultados de ningún tipo.