use IPC::Open3; use strict; use warnings; my $pid = open3(\*WRITER, \*READER, \*ERROR, "netstat"); while (my $line = ) { print $line; } waitpid($pid, 0); #### use strict; use warnings; while (<>) { print "[", $_, "]\n";#in your case, you would save this to an array, or if you want scalar reset local $/ } #### dir|perl -w foo.pl