Get-PSCallStack
Geçerli çağrı yığınını görüntüler.
Syntax
Default (Varsayılan)
Get-PSCallStack
Description
Get-PSCallStack cmdlet'i geçerli çağrı yığınını görüntüler.
PowerShell hata ayıklayıcısı ile kullanılmak üzere tasarlanmış olsa da, çağrı yığınını hata ayıklayıcının dışındaki bir betikte veya işlevde görüntülemek için bu cmdlet'i kullanabilirsiniz.
Hata ayıklayıcıda bir Get-PSCallStack komutu çalıştırmak için k veya Get-PSCallStackyazın.
Örnekler
Örnek 1: İşlevin çağrı yığınını alma
PS C:\> function my-alias {
$p = $args[0]
Get-Alias | where {$_.definition -like "*$p"} | format-table 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:\> 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*"} | format-table Definition,
[DBG]: PS C:\ps-test>get-pscallstack
Name CommandLineParameters UnboundArguments Location
---- --------------------- ---------------- --------
prompt {} {} prompt
my-alias {} {get-content} prompt
prompt {} {} prompt PS C:\> [DBG]: PS C:\ps-test> o
Definition Name
---------- ----
Get-Content gc
Get-Content cat
Get-Content type
Bu komut, cmdlet adının diğer adlarını alan basit bir işlev olan My-Alias için çağrı yığınını görüntülemek için Get-PSCallStack cmdlet'ini
İlk komut, PowerShell isteminde işleve girer. İkinci komut, My-Alias işlevinde bir kesme noktası ayarlamak için Set-PSBreakpoint cmdlet'ini kullanır. Üçüncü komut, Get-Content cmdlet'i için geçerli oturumdaki tüm diğer adları almak için My-Alias işlevini kullanır.
Hata ayıklayıcısı işlev çağrısında araya dalar. ardışık iki adım adım (s) komut, işlev satır satır yürütmeye başlar. Ardından, çağrı yığınını almak için bir Get-PSCallStack komutu kullanılır.
Son komut, hata ayıklayıcıdan çıkan ve betiği tamamlamaya devam eden bir Step-Out komutudur (o).
Girişler
None
Nesneleri bu cmdlet'e yöneltemezsiniz.
Çıkışlar
CallStackFrame
Get-PSCallStack, çağrı yığınındaki öğeleri temsil eden bir nesne döndürür.