我有一个别人写的perl程序。当我运行它时,它默默地退出而不向日志文件写入任何内容。有没有办法我可以逐步运行这个Perl程序,由解释器逐行运行,从而看到它终止的位置?
答案 0 :(得分:25)
是的,您可以使用perl -d
调用Perl调试器。
可以在perldoc perldebug和perldoc perldebtut中找到文档。
可能最有用的命令是:
s - step into current line.
n - step over current line.
r - step out of current function.
p <expr> - print the expression.
b <line|subnm> - sets a breakpoint
T - produce a stack trace.
c [<line|subnm>] - continue running with optional one-time breakpoint.
h - help (for other commands).
答案 1 :(得分:2)
有一个名为“ptkdb”的perl模块,它是一个独立的perl交互式调试器。它使用TK gui工作,所以你也需要它。
根据您的操作系统,您需要add some required modules。
使用
调用它perl -d:ptkdb <your script>
如果运行一些unix / linux系统,你还需要一台X服务器。
答案 2 :(得分:1)
有两种方法。首先是已经使用命令行开关“-d”的Hachi和llioin给出的那个
或者使用IDE。我尝试并使用了像魅力一样的komodo