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


当前回答

你可以在网上做这件事(就像生活中的许多事情一样):

https://www.tutorialspoint.com/execute_perl_online.php

其他回答

我总是这样做:

rlwrap perl -wlne'eval;print$@if$@'

使用5.10,我已经切换到:

rlwrap perl -wnE'say eval()//$@'

(rlwrap是可选的)

我写了一个脚本,我称之为“psh”:

#! /usr/bin/perl

while (<>) {
  chomp;
  my $result = eval;
  print "$_ = $result\n";
}

不管你输入什么,它都会在Perl中计算:

> gmtime(2**30)
gmtime(2**30) = Sat Jan 10 13:37:04 2004

> $x = 'foo'
$x = 'foo' = foo

> $x =~ s/o/a/g
$x =~ s/o/a/g = 2

> $x
$x = faa

如果需要历史记录,请使用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> 

您可以直接进入内置调试器并从那里运行命令。

   perl -d -e 1

参见时髦的REPL(适用于GNU Emacs)