Get-PSCallStack
Geçerli çağrı yığınını görüntüler.
Sözdizimi
Default EnterprisePublishing
Get-PSCallStack
Description
Get-PSCallStack cmdlet'i geçerli çağrı yığınını görüntüler.
Windows PowerShell hata ayıklayıcısı ile kullanılacak şekilde 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ıdayken 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, Get-PSCallStack cmdlet'ini kullanarak cmdlet adının diğer adlarını alan basit bir işlev olan My-Aliasiçin çağrı yığınını görüntüler.
İlk komut, işlevi Windows PowerShell komut isteminde çağırır. İkinci komut, Set-PSBreakpoint işlevinde bir kesme noktası ayarlamak için My-Alias cmdlet'ini kullanır. Üçüncü komut, My-Alias cmdlet'i için geçerli oturumdaki tüm diğer adları almak için Get-Content işlevini kullanır.
Hata ayıklayıcısı işlev çağrısında araya dalar. Ardışık iki step-into (s) komutu, işlevi 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
Bu cmdlet, çağrı yığınındaki öğeleri temsil eden bir nesne döndürür.
Notlar
PowerShell, Get-PSCallStackiçin aşağıdaki diğer adları içerir:
- Tüm platformlar:
gcs