Aracılığıyla paylaş


Get-PSCallStack

Geçerli çağrı yığınını görüntüler.

Sözdizimi

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 istemine girer. İ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