# # mailit - send an email using mailx. Accepts either a $body or a path # to a file # # Args: # $subject - email subject # either: # $body - body of email in scalar var, or # $fname - path to file to send. # @emails - list of email addresses to send email to # sub mailit { my ( $subj, $body, $fname, @email ) = @_; my($mailcmd) = "mailx -s\"$subj\""; die "Invalid mailit args\n" unless ($subj and ($body or $fname)); if ($body) { foreach ( @email ) { open( PI, "|$mailcmd $_" ) or warn "Pipe to mailx failed: $mailcmd\n"; print PI $body; print PI "\n.\n"; close PI; } } elsif ($fname) { die "Bad mailit path $fname\n " unless -e $fname; foreach ( @email ) { `$mailcmd $_ < $fname` or warn "bad mailx response: $?, $!"; } } }