从 .perldb 初始化文件设置断点
Set breakpoint from .perldb init file
我正在试验 .perldb
rc 文件并尝试设置断点。这是我用于测试的一个小示例脚本 (p.pl):
use feature qw(say);
use strict;
use warnings;
say "Line 5";
say "Line 6";
say "Line 7";
然后,我在当前目录中创建了以下 .perldb
文件:
parse_options("NonStop=1");
sub afterinit { push @DB::typeahead, "b 7" }
(注意这个文件除了你自己之外不能有写权限(即:chmod 644 .perldb
)否则调试器不会加载它)。然后我运行调试器下的脚本:
$ perl -d p.pl
Line 5
Line 6
Line 7
如图所示,第 7 行的断点未得到遵守。这可能是什么问题?
正在将您的“.perldb-File”更改为
#parse_options("NonStop=1");
sub afterinit { push @DB::typeahead, ("b 7", "c") }
应该完成这项工作。
$ perl -d t.pl
Loading DB routines from perl5db.pl version 1.51
Editor support available.
Enter h or 'h h' for help, or 'man perldebug' for more help.
main::(t.pl:5): say "Line 5";
auto(-2) DB<1> b 7
auto(-1) DB<2> c
Line 5
Line 6
main::(t.pl:7): say "Line 7";
DB<2> l
7==>b say "Line 7";
我正在试验 .perldb
rc 文件并尝试设置断点。这是我用于测试的一个小示例脚本 (p.pl):
use feature qw(say);
use strict;
use warnings;
say "Line 5";
say "Line 6";
say "Line 7";
然后,我在当前目录中创建了以下 .perldb
文件:
parse_options("NonStop=1");
sub afterinit { push @DB::typeahead, "b 7" }
(注意这个文件除了你自己之外不能有写权限(即:chmod 644 .perldb
)否则调试器不会加载它)。然后我运行调试器下的脚本:
$ perl -d p.pl
Line 5
Line 6
Line 7
如图所示,第 7 行的断点未得到遵守。这可能是什么问题?
正在将您的“.perldb-File”更改为
#parse_options("NonStop=1");
sub afterinit { push @DB::typeahead, ("b 7", "c") }
应该完成这项工作。
$ perl -d t.pl
Loading DB routines from perl5db.pl version 1.51
Editor support available.
Enter h or 'h h' for help, or 'man perldebug' for more help.
main::(t.pl:5): say "Line 5";
auto(-2) DB<1> b 7
auto(-1) DB<2> c
Line 5
Line 6
main::(t.pl:7): say "Line 7";
DB<2> l
7==>b say "Line 7";