in reply to $var | system()
If by "multiline text" you mean feed it input via STDIN, you can explicitly open a pipe using open, e.g.
open my $stream, "| mail -s '123' email\@at.com" or die "pipe fail: $! +"; print $stream $text; # Or @lines, or $line1, $line2... close $stream; # Handle needs to close or go out of scope to clear buf +fer and send EOF
There are a large number of other possibilities here, depending on how complex you want to get: system; pipe, fork and exec; IPC::Open2; IPC::Open3... See perlipc for some gory detail.
#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.
|
---|
In Section
Seekers of Perl Wisdom