Depura uno o más procesos que se ejecutan en el equipo local.

Sintaxis

Debug-Process [-Name] <string[]> [-Confirm] [-WhatIf] [<CommonParameters>]

Debug-Process [-Id] <Int32[]> [-Confirm] [-WhatIf] [<CommonParameters>]

Debug-Process -InputObject <Process[]> [-Confirm] [-WhatIf] [<CommonParameters>]

Descripción

El cmdlet Debug-Process adjunta un depurador a uno o más procesos en ejecución en un equipo local. Puede especificar los procesos por su nombre de proceso o su identificador de proceso (PID), o puede canalizar objetos de proceso a Debug-Process.

Debug-Process adjunta el depurador que se registra actualmente para el proceso. Antes de utilizar este cmdlet, compruebe que se descarga y se configura correctamente un depurador.

Parámetros

-Id <Int32[]>

Especifica los identificadores de proceso de los procesos que se van a depurar. El nombre del parámetro ("-Id") es opcional.

Para buscar el identificador de un proceso, escriba "Get-Process".

¿Requerido?

true

¿Posición?

1

Valor predeterminado

ninguno

¿Aceptar canalización?

true (ByPropertyName)

¿Aceptar caracteres comodín?

false

-InputObject <Process[]>

Especifica los objetos de proceso que representan procesos que se van a depurar. Escriba una variable que contenga los objetos de proceso o un comando que obtenga los objetos de proceso, como un comando Get-Process. También puede canalizar objetos de proceso a Debug-Process.

¿Requerido?

true

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

true (ByValue)

¿Aceptar caracteres comodín?

false

-Name <string[]>

Especifica los nombres de los procesos que se van a depurar. Si hay más de un proceso con el mismo nombre, Debug-Process asocia un depurador a todos los procesos con ese nombre. El nombre del parámetro ("Name") es opcional.

¿Requerido?

true

¿Posición?

1

Valor predeterminado

¿Aceptar canalización?

true (ByPropertyName)

¿Aceptar caracteres comodín?

false

-Confirm

Solicita confirmación antes de ejecutar el comando.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-WhatIf

Describe lo que ocurriría si ejecutara el comando sin ejecutarlo realmente.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

<CommonParameters>

Este cmdlet admite los parámetros comunes: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer y -OutVariable. Para obtener más información, vea about_Commonparameters.

Entradas y salidas

El tipo de entrada es el tipo de los objetos que se pueden canalizar al cmdlet. El tipo devuelto es el tipo de los objetos que el cmdlet devuelve.

Entradas

System.Int32, System.Diagnostics.Process, System.String

Puede canalizar un identificador de proceso (Int32), un objeto de proceso (System.Diagnostics.Process) o un nombre de proceso (String) a Debug-Process.

Salidas

Ninguno

Este cmdlet no genera resultados.

Notas

Este cmdlet utiliza el método AttachDebugger de la clase Win32_Process de Instrumental de administración de Windows (WMI). Para obtener más información sobre este método, vea el tema sobre el método AttachDebugger de la clase Win32_Process en MSDN Library, en https://go.microsoft.com/fwlink/?LinkId=143640.

Ejemplo 1

C:\PS>debug-process -name powershell

Descripción
-----------
Este comando adjunta un depurador al proceso de PowerShell en el equipo.






Ejemplo 2

C:\PS>debug-process -name sql*

Descripción
-----------
Este comando adjunta un depurador a todos los procesos cuyos nombres empiezan por "sql".






Ejemplo 3

C:\PS>debug-process winlogon, explorer, outlook

Descripción
-----------
Este comando adjunta un depurador a los procesos Winlogon, Explorer y Outlook.






Ejemplo 4

C:\PS>debug-process -id 1132, 2028

Descripción
-----------
Este comando adjunta un depurador a los procesos que tienen los identificadores de proceso 1132 y 2028.






Ejemplo 5

C:\PS>get-process powershell | debug-process

Descripción
-----------
Este comando adjunta un depurador a los procesos de PowerShell en el equipo. Utiliza el cmdlet Get-Process para obtener los procesos de PowerShell en el equipo y utiliza un operador de canalización (|) para enviar los procesos al cmdlet Debug-Process.

Para especificar un proceso de PowerShell determinado, utilice el parámetro ID de Get-Process.






Ejemplo 6

C:\PS>$pid | debug-process

Descripción
-----------
Este comando adjunta un depurador a los procesos actuales de PowerShell en el equipo. 

Utiliza la variable automática $pid, que contiene el identificador de proceso del proceso actual de PowerShell. A continuación, utiliza un operador de canalización (|) para enviar el identificador de proceso al cmdlet Debug-Process.

Para obtener más información sobre la variable automática $pid, vea about_Automatic_Variables.






Ejemplo 7

C:\PS>get-process -computername Server01, Server02 -name MyApp | debug-process

Descripción
-----------
Este comando asocia un depurador a los procesos MyApp en los equipos Server01 y Server02.

Utiliza el cmdlet Get-Process para obtener los procesos MyApp en los equipos Server01 y Server02. Utiliza un operador de canalización para enviar los procesos al cmdlet Debug-Process, que adjunta los depuradores.






Ejemplo 8

C:\PS>$p = get-process powershell

C:\PS> debug-process -inputobject $p

Descripción
-----------
Este comando adjunta un depurador a los procesos de PowerShell en el equipo local. 

El primer comando utiliza el cmdlet Get-Process para obtener los procesos de PowerShell en el equipo. Guarda el objeto de proceso resultante en la variable $p.

El segundo comando usa el parámetro InputObject de Debug-Process para enviar el objeto de proceso en la variable $p a Debug-Process.






Vea también




Tabla de contenido