如何启动Perl的交互式控制台,类似于Ruby的irb命令或python的python命令?
当前回答
Matt Trout不仅写了一篇关于REPL的文章,他实际上也写了一篇——Devel::REPL
我曾经使用过它,它工作得相当好,并且正在积极开发中。
顺便说一句,我不知道为什么有人贬低了那个提到从控制台使用“perl -e”的人。这不是一个真正的REPL,但它非常有用,我一直在使用它。
其他回答
Perl不像Python那样内置交互式控制台。但是,您可以使用Perl调试器来做调试相关的事情。您可以使用-d选项打开它,但您可能想要查看'man perldebug'以了解它。
在谷歌搜索一下之后,有一个单独的项目实现了Perl控制台,您可以在 Perl控制台- Perl代码与完成的交互式计算器。
希望这能有所帮助!
Read-eval-print循环:
$ perl -e'while(<>){print eval,"\n"}'
你可以在emacs中使用org-babel;打开一个组织模式文件,即tmp.org,然后你可以这样做:
#+begin_src perl :results output
@a = (1,5,9);
print ((join ", ", @a) . "\n");
$b = scalar @a;
print "$#a, $b\n";
print "$#a, " . @a . "\n";
print join ", ", 1..$#a; print "\n";
print join ", ", @a[0..$#a]
#+end_src
按CTRL-c CTRL-c将计算该块:
#+RESULTS:
#+begin_example
1, 5, 9
2, 3
2, 3
1, 2
1, 5, 9
#+end_example
我不确定这需要什么emacs配置,但我认为您可以安装https://github.com/hlissner/doom-emacs并启用它的perl和org-mode模块。
你可以在网上做这件事(就像生活中的许多事情一样):
https://www.tutorialspoint.com/execute_perl_online.php
我使用命令行作为控制台:
$ perl -e 'print "JAPH\n"'
然后,我可以使用bash历史记录获取旧命令。然而,这并不能保存状态。
当您想测试“一件小事”(比如回答Perl问题)时,这个表单最有用。我经常发现这些命令被逐字逐句地复制到shell脚本或makefile中。
推荐文章
- console.log()和console.debug()的区别?
- 如何禁用标准错误流的日志记录?
- 在Perl中,“my”和“our”的区别是什么?
- 为什么“System.out。”println“工作在Android?
- 如何在保持原始字符串的同时对字符串执行Perl替换?
- 如何在Visual c++中保持控制台窗口打开?
- Perl的@INC是如何构造的?(又名:影响Perl模块搜索位置的所有方法是什么?)
- 如何停止c++控制台应用程序从退出立即?
- 从输出中删除颜色
- Chrome: console.log, console.debug不工作
- 访问控制台和扩展的后台开发工具
- 将Chrome中的console.log保存为文件
- 清除javascript控制台在谷歌Chrome
- 安装缺少的Perl模块最简单的方法是什么?
- 我如何才能快速和所有的数字在一个文件?