我经常使用lib ReadLine和lib Perl Readline。
然而,Perl调试器拒绝保存会话命令行历史记录。
因此,每次调用调试器时,我都会丢失之前的所有历史记录。
有没有人知道如何让Perl调试器保存会话历史记录,并希望能够类似于bash的HISTORYFILE
附加历史记录?
~/.perldb
文件中添加以下行:
&parse_options("HistFile=$ENV{HOME}/.perldb.hist");
调试器命令将存储在~/.perldb.hist
中,并可跨会话访问。parse_options("TTY=/dev/stdin ReadLine=0");
添加到.perldb文件中,然后执行以下操作:rlwrap -H .perl_history perl -d ...
ReadLine=0
在这里是什么意思?如果为假,则使用虚拟的 ReadLine,以便您可以调试 ReadLine 应用程序。它的文档对我来说没有太多意义... - new_perlreadline
,我该如何输入命令? - new_perl$ export PERLDB_OPTS=HistFile=$HOME/.perldb.history
~/.perldb
,这之前不存在。&parse_options("HistFile=$ENV{HOME}/.perldb.hist");
。export PERLDB_OPTS=HistFile=$HOME/.perldb.history
到~/.bashrc。source .bashrc
5)运行perl -d my program.pl
,并得到了这个警告/错误。perldb: Must not source insecure rcfile /home/ics/.perldb.
You or the superuser must be the owner, and it must not
be writable by anyone but its owner.
6) 我用拥有者读写权限的chmod 700 ~/.perldb
保护了~/.perldb
,错误消失了。
apt-get install libterm-readline-gnu-perl
(至少在Debian中)。 - MacMartin