use IPC::Open3; sub piped_cmd { local *TO; local *FROM; open3 (\*TO, \*FROM, \*FROM, "perl") or die "Cannot launch perl: $!"; print TO @_, "\n__END__\n"; local $/; ; }