#!/usr/bin/env perl use strict; use warnings; use Data::Dumper; use IPC::Cmd qw/run/; my @in = ("Test foo", "Test bar"); print "In: " . Dumper(@in); my @out = run(command => 'echo -n ', \@in , '| sed -r "s/(foo|bar)/pass/"'); print "Out: " . Dumper(@out); #### In: $VAR1 = 'Test foo'; $VAR2 = 'Test bar'; Out: $VAR1 = 1; $VAR2 = undef; $VAR3 = []; $VAR4 = []; $VAR5 = []; #### #!/usr/bin/env perl use strict; use warnings; use Data::Dumper; use IPC::Run qw/run/; use IPC::Run qw(run); my @in = ("Test foo", "Test bar"); run [echo => -n => join("\n", @in)] , '|', [ sed => -r => "s/(foo|bar)/pass/" ], '>', \my $out; print "Redir: " . Dumper($out);