代码之家  ›  专栏  ›  技术社区  ›  viraptor

在当前和更高的帧中列出变量

  •  4
  • viraptor  · 技术社区  · 15 年前

    我正在尝试用调试脚本 perl -d ... . 在我打破我想要的地方,我想打印出当前的环境和环境从更高的帧。

    我是通过 T . 现在,如果我尝试 V ,我得到了一个所有东西的列表,它几乎是无用的,因为它包含了 SO_BROADCAST 常量等。我如何过滤掉它们,只得到本地的?

    对于更高的帧,如何执行相同的操作?

    另外,如何在较高堆栈帧的行周围打印代码? v / l 只做当前的。

    2 回复  |  直到 9 年前
        1
  •  1
  •   Grrrr    15 年前

    你试过了吗? y [level] ,显示当前或更高(由指定)的词法(my)变量 level )?

    当然,前提是你所说的“只买本地的”。

        2
  •  1
  •   Eric Strom    15 年前

    您也可以使用 PadWalker 模块,为您提供给定范围内的词汇列表。这个 peek_my peek_our 函数在相对调用帧(0-当前帧,1-调用帧,…)处返回作用域中变量的哈希引用。