作者:川大蛋炒饭-_246 | 来源:互联网 | 2022-12-09 10:23
我想写它运行的程序的Perl脚本foo
,并bar
和流程stdout
的foo
它发射到stdin
的bar
以流方式.Perl脚本应该像这个bash
命令一样:
$ foo | some-perl-code | bar
我设法用下面的代码片段完成第一部分.我启动程序foo
并打开管道阅读stdout
.
open( my $pipe_fh, "foo |" );
while ( my $row = <$pipe_fh> ) {
# do stuff
print $row;
}
我如何实现第二部分?如何在 Perl脚本中$row
向程序发出声音?bar
1> choroba..:
只需使用另一个打开,但还原管道的方向:
open my $in, '-|', 'foo' or die $!;
open my $out, '|-', 'bar' or die $!;
while ( my $row = <$in> ) {
# do stuff
print {$out} $row;
}