Get-PSCallStack
Muestra la actual pila de llamadas.
Sintaxis
Get-PSCallStack [<CommonParameters>]
Descripción
El cmdlet Get-PSCallStack muestra la actual pila de llamadas.
Si bien se ha diseñado para usarlo con el depurador de Windows PowerShell, este cmdlet puede usarse para mostrar la pila de llamadas en un script o una función fuera del depurador.
Para ejecutar un comando Get-PSCallStack desde el depurador, escriba "k" o "get-pscallstack".
Parámetros
<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 |
Ninguno No puede canalizar objetos a este cmdlet. |
Salidas |
System.Management.Automation.CallStackFrame Get-PSCallStack devuelve un objeto que representa los elementos en la pila de llamadas. |
Ejemplo 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
Descripción
-----------
Este comando utiliza el cmdlet Get-PSCallStack para mostrar la pila de llamadas de My-Alias, una función simple que obtiene los alias de un nombre de cmdlet.
El primer comando escribe la función en el símbolo del sistema de Windows PowerShell. El segundo comando usa el cmdlet Set-PSBreakpoint para establecer un punto de interrupción en la función My-Alias. El tercer comando usa la función My-Alias para obtener todos los alias del cmdlet Get-Content en la sesión actual.
El depurador interrumpe la llamada a la función. Dos comandos (s) paso a paso por línea consecutivos empiezan a ejecutar la función línea por línea. A continuación, se usa un comando Get-PSCallStack para recuperar la pila de llamadas.
El último comando es un comando Step-Out (o) que cierra el depurador y continúa ejecutando el script hasta el final.
Vea también
Conceptos
about_Debuggers
Set-PSBreakpoint
Get-PSBreakpoint
Enable-PSBreakpoint
Disable-PSBreakpoint
Remove-PSBreakpoint