我是Perl noob,请原谅这个基本问题.我需要修改现有的Perl程序.我想通过外部程序管道一个字符串(可以包含多行)并读取该程序的输出.所以这个外部程序用于修改字符串.我们只是cat用作过滤程序.我试过这样但它不起作用.(输出cat到stdout而不是被读取perl.)
#!/usr/bin/perl
open(MESSAGE, "| cat |") or die("cat failed\n");
print MESSAGE "Line 1\nLine 2\n";
my $message = "";
while (<MESSAGE>)
{
$message .= $_;
}
close(MESSAGE);
print "This is the message: $message\n";
Run Code Online (Sandbox Code Playgroud)
我已经读过Perl不支持它,因为它可能会陷入僵局,我可以理解它.但是我该怎么做呢?