Heray-Was-Here
Server : Apache
System : Linux vps103298.mylogin.co 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64
User : calvet ( 273824)
PHP Version : 7.4.33
Disable Function : NONE
Directory :  /usr/share/doc/perl-IPC-Run/eg/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/share/doc/perl-IPC-Run/eg/synopsis_scripting
use strict;

my @cat = qw( cat );
my ( $in_q, $out_q, $err_q );

use IPC::Run qw( start pump finish timeout );

# Incrementally read from / write to scalars.  Note that $in_q
# is a queue that is drained as it is used. $h is for "harness".
my $h = start \@cat, \$in_q, \$out_q, \$err_q, timeout(10), debug => 1;

$in_q .= "some input\n";
pump $h until $out_q =~ /input\n/g;

$in_q .= "some more input\n";
pump $h until $out_q =~ /\G.*more input\n/;

$in_q .= "some final input\n";
finish $h or die "cat returned $?";

warn $err_q if $err_q;
print $out_q ;    ## All of cat's output


Hry