#!/usr/gnu/bin/perl -w # # use strict; no strict "refs"; use Mail::Sender; my $f2dir = "/home/bradley/scripts/prog/names"; my @names = <$f2dir/*.f2mail>; my $file; foreach $file (@names) { if ( (! -d $file) && ($file =~ /\b\.f2mail/) ) { parse_mail($file); print "."; }else{ print "Error with $file, $!"; } } ################################################################################ # Begin Subroutines # # parse_mail parses the parameter file (*.f2mail) and submits the results to # Mail::Sender for smtp ################################################################################ sub parse_mail { my $mail = "@_"; open (MAIL,$mail) || die "Cannot open $mail, $!"; my @mailf = ; chomp (@mailf); close (MAIL) || die "Cannot close $mail, $!"; sender_mail(@mailf); } ################################################################################ # # sender_mail calls the Mail:Sender module and prepares for smtp ################################################################################ sub sender_mail { my @mailf = @_; open (BODY,$mailf[3]) || die "Cannot open $mailf[3], $!"; my @body = ; close (BODY) || die "Cannot close $mailf[3], $!"; rename($mailf[4],"$mailf[4]\.txt") || die "Cannot rename $mailf[4], $!"; my $sender; ($sender = new Mail::Sender ({ from => $mailf[2], smtp => 'localhost'})) || die "Sender error: $sender, $Mail::Sender::Error!\n"; ($sender->MailFile( {to => $mailf[0], subject => $mailf[1], msg => "@body", file => $mailf[4]})) || die "Sender error, $sender, $Mail::Sender::Error!"; }