Compartilhar via


Get-PSCallStack

Exibe a pilha de chamadas atual.

Sintaxe

Get-PSCallStack [<CommonParameters>]

Descrição

O cmdlet Get-PSCallStack exibe a pilha de chamadas atual.

Embora seja criado para ser usado com o depurador Windows PowerShell, você pode usar este cmdlet para exibir a pilha de chamadas em um script ou função fora do depurador.

Para executar um comando Get-PSCallStack no depurador, digite "k" ou "get-pscallstack."

Parâmetros

<CommonParameters>

Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.

Entradas e saídas

O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.

Entradas

Nenhum

Você não pode canalizar objetos para este cmdlet.

Saídas

System.Management.Automation.CallStackFrame

Get-PSCallStack retorna um objeto que representa os itens na pilha de chamadas.

Exemplo 1

C:\PS>function my-alias { 
   $p = $args[0]
   get-alias | where {$_.definition -like "*$p"} | ft definition, name -auto
}

PS C:\ps-test> set-psbreakpoint -command my-alias
    
Command    : my-alias
Action     :
Enabled    : True
HitCount   : 0
Id         : 0
Script     : prompt
    
    
PS C:\ps-test> my-alias get-content
Entering debug mode. Use h or ? for help.

Hit Command breakpoint on 'prompt:my-alias'

my-alias get-content

[DBG]: PS C:\ps-test> s
$p = $args[0]

DEBUG: Stepped to ':    $p = $args[0]    '

[DBG]: PS C:\ps-test> s
get-alias | Where {$_.Definition -like "*$p*"} | ft Definition,

[DBG]: PS C:\ps-test>get-pscallstack

Name        CommandLineParameters         UnboundArguments              Location
----        ---------------------         ----------------              --------
prompt      {}                            {}                            prompt
my-alias    {}                            {get-content}                 prompt
prompt      {}                            {}                            prompt


[DBG]: PS C:\ps-test> o
    
Definition  Name
----------  ----
Get-Content gc
Get-Content cat
Get-Content type

Descrição
-----------
Este comando usa o cmdlet Get-PSCallStack para exibir a pilha de chamadas para My-Alias, uma função simples que obtém os aliases para um nome do cmdlet.

O primeiro comando insere a função no prompt de comando do Windows PowerShell. O segundo comando usa o cmdlet Set-PSBreakpoint para definir um ponto de interrupção na função My-Alias. O terceiro comando usa a função My-Alias para obter todos os aliases da sessão atual para o cmdlet Get-Content.

O depurador é iniciado na chamada de função. Dois comandos de entrada (s) sucessivos iniciam a execução da função linha por linha. Então, um comando Get-PSCallStack é usado para recuperar a pilha de chamadas. 

O comando final é um comando Step-Out (o), que encerra o depurador e continua executando o script até sua conclusão.





Consulte também

Conceitos

about_Debuggers
Set-PSBreakpoint
Get-PSBreakpoint
Enable-PSBreakpoint
Disable-PSBreakpoint
Remove-PSBreakpoint