Debug-Process
Depura um ou mais processos em execução no computador local.
Sintaxe
Name (Default)
Debug-Process
[-Name] <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Id
Debug-Process
[-Id] <Int32[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
InputObject
Debug-Process
-InputObject <Process[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O cmdlet Debug-Process anexa um depurador a um ou mais processos em execução em um computador local. Você pode especificar os processos pelo nome do processo ou pela ID do processo (PID) ou pode canalizar objetos de processo para este 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: Vincular um depurador a um processo no computador
PS C:\> Debug-Process -Name "Windows Powershell"
Esse comando anexa um depurador ao processo do Windows 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 do Winlogon, explorer e Outlook.
Exemplo 4: Anexar um depurador a vários IDs de processo
PS C:\> Debug-Process -Id 1132, 2028
Esse comando anexa um depurador aos processos que têm IDs de processo 1132 e 2028.
Exemplo 5: Usar Get-Process para obter um processo e, depois, anexar um depurador a ele
PS C:\> Get-Process "Windows PowerShell" | Debug-Process
Esse comando anexa um depurador aos processos do Windows PowerShell no computador.
Ele usa o cmdlet
Para especificar um processo específico do PowerShell, use o parâmetro de ID do 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 Windows PowerShell no computador.
O comando usa a variável $PID automática, que contém a ID do processo do Windows PowerShell atual. Em seguida, ele usa um operador de pipeline (|) para enviar a ID do processo para o cmdlet Debug-Process.
Para obter mais informações sobre a variável automática $PID, consulte about_Automatic_Variables.
Exemplo 7: Anexar um depurador ao processo especificado em vários computadores
PS C:\> Get-Process -ComputerName "Server01", "Server02" -Name "MyApp" | Debug-Process
Esse comando anexa um depurador aos processos do MyApp nos computadores Server01 e Server02.
O comando usa o cmdlet get-process
Exemplo 8: 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 Windows PowerShell no computador local.
O primeiro comando usa o cmdlet
O segundo comando usa o parâmetro
Parâmetros
-Confirm
Solicita sua confirmação antes de executar o cmdlet.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | False |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | cf |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Id
Especifica os identificadores de processo dos processos a depurar. O nome do parâmetro ID é opcional.
Para localizar o ID de processo de um processo, digite Get-Process.
Propriedades do parâmetro
| Tipo: | Int32[] |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | PID, ProcessId |
Conjuntos de parâmetros
Id
| Cargo: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-InputObject
Especifica os objetos de processo que representam 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 cmdlet Get-Process. Você também pode canalizar objetos de processo para este cmdlet.
Propriedades do parâmetro
| Tipo: | Process[] |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
InputObject
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | 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 Nome é opcional.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | ProcessName |
Conjuntos de parâmetros
Name
| Cargo: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | False |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | wi |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Entradas
System.Int32, System.Diagnostics.Process, System.String
Você pode redirecionar uma ID de processo (Int32), um objeto de processo (System.Diagnostics.Process) ou um nome de processo (String) para este cmdlet.
Saídas
None
Este cmdlet não gera saída.
Observações
- Esse cmdlet usa o método AttachDebugger da classe WMI (Instrumentação de Gerenciamento do Windows) Win32_Process. Para obter mais informações sobre esse método, consulte método AttachDebugger na biblioteca MSDN.