Debug-Process
Depura um ou mais processos em execução no computador local.
Syntax
Debug-Process
[-Name] <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Debug-Process
[-Id] <Int32[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Debug-Process
-InputObject <Process[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O Debug-Process
cmdlet anexa um depurador a um ou mais processos em execução em um computador local.
Você pode especificar os processos por seu nome de processo ou PID (ID de processo) ou redirecionar objetos de processo para esse cmdlet.
Esse cmdlet anexa o depurador que está registrado no momento para o processo. Antes de usar esse cmdlet, verifique se um depurador foi baixado e configurado corretamente.
Exemplos
Exemplo 1: anexar um depurador a um processo no computador
PS C:\> Debug-Process -Name "Windows Powershell"
Esse comando anexa um depurador ao processo do PowerShell no computador.
Exemplo 2: anexar um depurador a todos os processos que começam com a cadeia de caracteres especificada
PS C:\> Debug-Process -Name "SQL*"
Esse comando anexa um depurador a todos os processos que têm nomes que começam com SQL.
Exemplo 3: anexar um depurador a vários processos
PS C:\> Debug-Process "Winlogon", "Explorer", "Outlook"
Esse comando anexa um depurador aos processos Winlogon, Explorer e Outlook.
Exemplo 4: anexar um depurador a várias IDs de processo
PS C:\> Debug-Process -Id 1132, 2028
Esse comando anexa um depurador aos processos que têm as IDs de processo 1132 e 2028.
Exemplo 5: Usar Get-Process para obter um processo e anexar um depurador a ele
PS C:\> Get-Process "Windows PowerShell" | Debug-Process
Esse comando anexa um depurador aos processos do PowerShell no computador. Ele usa o Get-Process
cmdlet para obter os processos do PowerShell no computador e usa um operador de pipeline (|
) para enviar os processos para o Debug-Process
cmdlet.
Para especificar um processo específico do PowerShell, use o parâmetro ID de Get-Process
.
Exemplo 6: anexar um depurador a um processo atual no computador local
PS C:\> $PID | Debug-Process
Esse comando anexa um depurador aos processos atuais do PowerShell no computador.
O comando usa a $PID
variável automática , que contém a ID de processo do processo atual do PowerShell. Em seguida, ele usa um operador de pipeline (|
) para enviar a ID do processo para o Debug-Process
cmdlet .
Para obter mais informações sobre a $PID
variável automática, consulte about_Automatic_Variables.
Exemplo 7: Anexar um depurador a um processo que usa o parâmetro InputObject
PS C:\> $P = Get-Process "Windows PowerShell"
PS C:\> Debug-Process -InputObject $P
Esse comando anexa um depurador aos processos do PowerShell no computador local.
O primeiro comando usa o Get-Process
cmdlet para obter os processos do PowerShell no computador. Ele salva o objeto de processo resultante na variável chamada $P
.
O segundo comando usa o parâmetro InputObject do Debug-Process
cmdlet para enviar o objeto de processo na $P
variável .
Parâmetros
-Confirm
Solicita sua confirmação antes de executar o cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Id
Especifica os identificadores de processo dos processos a depurar. O nome do parâmetro Id é opcional.
Para localizar a ID do processo de um processo, digite Get-Process
.
Type: | Int32[] |
Aliases: | PID, ProcessId |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-InputObject
Especifica os objetos de processo que representam os processos a serem depurados. Insira uma variável que contenha os objetos de processo ou um comando que obtém os objetos de processo, como o Get-Process
cmdlet . Você também pode redirecionar objetos de processo para esse cmdlet.
Type: | Process[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Especifica os nomes dos processos a serem depurados. Se houver mais de um processo com o mesmo nome, esse cmdlet anexa um depurador a todos os processos com esse nome. O parâmetro Name é opcional.
Type: | String[] |
Aliases: | ProcessName |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entradas
Você pode redirecionar uma ID de processo para esse cmdlet.
Você pode redirecionar um objeto de processo para esse cmdlet.
Você pode redirecionar um nome de processo para esse cmdlet.
Saídas
None
Esse cmdlet não retorna nenhuma saída.
Observações
Esse cmdlet usa o método AttachDebugger da classe Win32_Process da WMI (Instrumentação de Gerenciamento do Windows). Para obter mais informações sobre esse método, consulte Método AttachDebugger na biblioteca MSDN.