Why can't I pipe the output of uuencode to mailx in a single Perl open statement?

Posted by CheeseConQueso on Stack Overflow See other posts from Stack Overflow or by CheeseConQueso
Published on 2010-03-25T20:23:21Z Indexed on 2010/03/25 23:33 UTC
Read the original article Hit count: 349

Filed under:
|
|
|
|

Here's my code that is not working:

print "To: ";  my $to=<>;  chomp $to;
print "From: ";  my $from=<>;  chomp $from;
print "Attach: "; my $attach=<>; chomp $attach;
print "Subject: "; my $subject=<>; chomp $subject;
print "Message: "; my $message=<>; chomp $message;

my $mail_fh = \*MAIL;
open $mail_fh, "uuencode $attach $attach |mailx -m -s \"$subject\" -r $from $to";
print $mail_fh $message;
close($mail_fh);

The mailx command works fine off the command line, but not in this Perl script context.

Any idea what I'm missing?


I suspect that this line's format/syntax:

open $mail_fh, "uuencode $attach $attach |mailx -m -s \"$subject\" -r $from $to";

is the culprit.

© Stack Overflow or respective owner

Related posts about hpux

Related posts about mailx