Perl 有交互式命令行环境吗?



嗨,我想知道Perl是否有类似于Rstudio的东西? 也就是说,能够运行命令,在不退出脚本的情况下将所有变量保留在内存中。

例如,假设我my $temp = 83;执行此命令,然后我更改了值$temp = 22; print "$temp n";,而不是结束脚本,依此类推,但我不会结束脚本并继续处理它。 这在处理大型数据集和一般工作流时非常有用。 我遇到的最接近的事情是使用插件的Visual Studio Code,我可以在脚本中执行特定的代码块。但是我没有找到将变量永久保存在内存中的方法。
谢谢!

你想要一个REPL。

看看 Devel::REPL。它带来了一个名为re.pl的脚本,您可以运行该脚本。

$ re.pl
$ my $foo = 123;
123$ use feature 'say';
$  $foo + 1;
124$ 

较新的替代方法是使用其reply脚本回复。

$ reply 
0> my $foo = 123;
$res[0] = 123
1> $foo + 2
$res[1] = 125
2> 

为了进行比较,您可以阅读Matt Trout的这篇博客文章。

最新更新