如何启动Perl的交互式控制台,类似于Ruby的irb命令或python的python命令?


当前回答

还可以在CPAN上查找ptkdb: http://search.cpan.org/search?query=ptkdb&mode=all

其他回答

我使用命令行作为控制台:

$ perl -e 'print "JAPH\n"'

然后,我可以使用bash历史记录获取旧命令。然而,这并不能保存状态。

当您想测试“一件小事”(比如回答Perl问题)时,这个表单最有用。我经常发现这些命令被逐字逐句地复制到shell脚本或makefile中。

你可以在一个简单的程序上使用perl调试器,如下所示:

perl -de1

还有Alexis Sukrieh的Perl控制台应用程序,但我没有使用过它。

Matt Trout不仅写了一篇关于REPL的文章,他实际上也写了一篇——Devel::REPL

我曾经使用过它,它工作得相当好,并且正在积极开发中。

顺便说一句,我不知道为什么有人贬低了那个提到从控制台使用“perl -e”的人。这不是一个真正的REPL,但它非常有用,我一直在使用它。

Read-eval-print循环:

$ perl -e'while(<>){print eval,"\n"}'

如果需要历史记录,请使用rlwrap。这可以是你的~/bin/ips,例如:

#!/bin/sh
echo 'This is Interactive Perl shell'
rlwrap -A -pgreen -S"perl> " perl -wnE'say eval()//$@'

这是它的样子:

$ ips
This is Interactive Perl shell
perl> 2**128
3.40282366920938e+38
perl>