Perl 在当前帧和更高帧中列出变量
我正在尝试使用Perl 在当前帧和更高帧中列出变量,perl,debugging,stack-trace,stack-frame,Perl,Debugging,Stack Trace,Stack Frame,我正在尝试使用perl-d…调试脚本。在我想在哪里中断后,我想打印出当前环境和较高帧中的环境 我通过T看到堆栈。现在,如果我尝试V,我会得到一个所有内容的列表,这几乎是无用的,因为它包括SO\u BROADCAST常量等内容。我如何过滤掉这些内容并仅获取本地内容 如何对较高的帧执行相同的操作 另外,如何在较高堆栈帧的行周围打印代码v/l只执行当前一个。您是否尝试过y[级别],它显示当前或更高级别(由级别指定)的词法(my)变量 当然,前提是这就是“仅获取本地词汇”的意思。您也可以使用该模块为您提
perl-d…
调试脚本。在我想在哪里中断后,我想打印出当前环境和较高帧中的环境
我通过T
看到堆栈。现在,如果我尝试V
,我会得到一个所有内容的列表,这几乎是无用的,因为它包括SO\u BROADCAST
常量等内容。我如何过滤掉这些内容并仅获取本地内容
如何对较高的帧执行相同的操作
另外,如何在较高堆栈帧的行周围打印代码
v
/l
只执行当前一个。您是否尝试过y[级别]
,它显示当前或更高级别(由级别指定)的词法(my)变量
当然,前提是这就是“仅获取本地词汇”的意思。您也可以使用该模块为您提供给定范围内的词汇列表。peek_my
和peek_我们的
函数返回相对调用帧(0-当前帧,1-调用帧,…)范围内变量的hashref但是级别是什么?它与堆栈帧编号相同吗?它们以哪种方式编号?与caller()接口类似,0=当前帧,1=上面的帧,等等。根据Eric Strom的回答,当我尝试“y”命令时,我被告知必须安装PadWalker。