如何启动Perl的交互式控制台,类似于Ruby的irb命令或python的python命令?
当前回答
我使用命令行作为控制台:
$ perl -e 'print "JAPH\n"'
然后,我可以使用bash历史记录获取旧命令。然而,这并不能保存状态。
当您想测试“一件小事”(比如回答Perl问题)时,这个表单最有用。我经常发现这些命令被逐字逐句地复制到shell脚本或makefile中。
其他回答
参见时髦的REPL(适用于GNU Emacs)
Read-eval-print循环:
$ perl -e'while(<>){print eval,"\n"}'
Perl没有控制台,但是调试器可以作为控制台使用。在命令提示符下,键入perl -de 1。(值“1”无关紧要,它只是一个没有任何作用的有效语句。)
Perl shell也有几个选项: 存档的“perlfaq3”页面,其中包含问题“有Perl Shell吗?”
有关更多信息,请阅读perlfaq3(当前版本)。
有两种流行的Perl repl。
Devel: REPL很棒。 但在我看来,回复更好。
对于回复,只需运行它作为一个命令。模块安装应答脚本。如果您已经安装了模块,但没有该命令,请检查PATH变量。
$ reply --help
reply [-lb] [-I dir] [-M mod] [--version] [--help] [--cfg file]
我总是这样做:
rlwrap perl -wlne'eval;print$@if$@'
使用5.10,我已经切换到:
rlwrap perl -wnE'say eval()//$@'
(rlwrap是可选的)
推荐文章
- 如何从iOS模拟器获取控制台日志?
- 在控制台中禁用Rails SQL日志
- 如何启动Perl的交互式控制台?
- 正则表达式以匹配包括新行在内的任何字符
- 如何在Python中获取Linux控制台窗口宽度
- 有更好的Windows控制台窗口吗?
- 如何在控制台中实时显示测试结果?
- 如何在Perl中跳出循环?
- 如何在Bash中粗体输出文本?
- 如何使谷歌Chrome JavaScript控制台持久?
- 如何在我的代码中快速方便地禁用所有console.log语句?
- 为什么脚本语言(例如Perl、Python和Ruby)不适合作为shell语言?
- 如何增加Eclipse输出控制台的容量?
- 匹配空格但不匹配换行符
- 如何在PHP中写入控制台?