Set-PSDebug
Ativa e desativa recursos de depuração de script, define o nível de rastreamento e alterna o modo estrito.
Sintaxe
on
Set-PSDebug
[-Trace <Int32>]
[-Step]
[-Strict]
[<CommonParameters>]
off
Set-PSDebug
[-Off]
[<CommonParameters>]
Description
O cmdlet Set-PSDebug ativa e desativa os recursos de depuração de script, define o nível de rastreamento e alterna o modo estrito. Por padrão, os recursos de depuração do PowerShell estão desativados.
Quando o parâmetro Trace tem um valor de 1, cada linha de script é rastreada à medida que é executada. Quando o parâmetro tem um valor de 2, atribuições de variáveis, chamadas de função e chamadas de script também são rastreadas. Se o parâmetro Etapa for especificado, você será solicitado antes que cada linha do script seja executada.
Exemplos
Exemplo 1: Definir o nível de rastreamento
Este exemplo define o nível de rastreamento como 2e, em seguida, executa um script que exibe os números 1, 2 e 3.
Set-PSDebug -Trace 2; foreach ($i in 1..3) {$i}
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in >>>> 1..3) {$i}
DEBUG: ! SET $foreach = 'IEnumerator'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $i = '1'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in 1..3) { >>>> $i}
1
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $i = '2'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in 1..3) { >>>> $i}
2
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $i = '3'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in 1..3) { >>>> $i}
3
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $foreach = ''.
Exemplo 2: Ativar a etapa
Este exemplo ativa a etapa e executa um script que exibe os números 1, 2 e 3.
Set-PSDebug -Step; foreach ($i in 1..3) {$i}
Continue with this operation?
1+ Set-PSDebug -Step; foreach ($i in >>>> 1..3) {$i}
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): A
DEBUG: 1+ Set-PSDebug -Step; foreach ($i in >>>> 1..3) {$i}
1
2
3
Exemplo 3: Usar o modo estrito
Este exemplo coloca o PowerShell no modo estrito e tenta acessar uma variável que não tem um valor atribuído.
Set-PSDebug -Strict; $NewVar
The variable '$NewVar' cannot be retrieved because it has not been set.
At line:1 char:22
+ Set-PSDebug -Strict; $NewVar
Exemplo 4: Desativar recursos de depuração
Este exemplo desativa todos os recursos de depuração e executa um script que exibe os números 1, 2 e 3.
Set-PSDebug -Off; foreach ($i in 1..3) {$i}
1
2
3
Parâmetros
-Off
Desativa todos os recursos de depuração de script.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | False |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
off
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Step
Ativa a etapa de script. Antes de cada linha ser executada, o PowerShell solicita que você pare, continue ou insira um novo nível de interpretador para inspecionar o estado do script.
Especificar o parâmetro etapa
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | False |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
on
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Strict
Especifica que as variáveis devem ser atribuídas a um valor antes de serem referenciadas em um script. Se uma variável for referenciada antes de um valor ser atribuído, o PowerShell retornará um erro de exceção. Isso é equivalente a Set-StrictMode -Version 1. Para obter mais informações, consulte Set-StrictMode.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | False |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
on
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Trace
Especifica o nível de rastreamento para cada linha em um script. Cada linha é rastreada à medida que é executada.
Os valores aceitáveis para esse parâmetro são os seguintes:
- 0: Desativar o rastreamento de script.
- 1: Rastrear linhas de script à medida que são executadas.
- 2: Rastrear linhas de script, atribuições de variáveis, chamadas de função e scripts.
Propriedades do parâmetro
| Tipo: | Int32 |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
on
| 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
None
Não é possível transferir objetos para esse cmdlet.
Saídas
None
Esse cmdlet não retorna nenhuma saída.