SMTP Send
David Pasek
pasek at idc.cz
Wed Jan 30 04:42:28 CET 2002
Opravdu mi to nedalo spat, probouzel jsem se ze spani a tak jsem musel
ve 4.00 rano vstat, odladit skriptik a napsat tento mail, kterym bych
chtel ukoncit svoje prispevky k diskusi na toto tema.
Takze jeste jednou a znova od zacatku.
Potrebujes jednoduchou utilitku, ktera by ti mail ve formatu mbox (teda
napr. to co ti prijde ze sendmailu do mail.local, a tak jak je to
ulozeno v mailboxech ve /var/mail/...) preposlala pres nejaky smtp
server na nejakou adresu.
Chapu, sam jsem neco takoveho potreboval, kdyz jsem nechtel pouzit
.forward pro presmerovani mailu a potreboval jeste dalsi funkcionalitu.
Tady je moje kompletni reseni, ktere je otestovane a funguje. Testovano
i s multi-part mailama a prilohama.
######################################################################
#!/usr/bin/perl
use Net::SMTP;
if ( ($#ARGV + 1) != 3 ) {
print "Usage: mailforward.pl SMTP EMAIL_FROM EMAIL_TO\n";
exit;
}
$SMTP = $ARGV[0]; $EMAIL_FROM = $ARGV[1]; $EMAIL_TO = $ARGV[2];
$mbox=""; while (<STDIN>) {$mbox.=$_;}
$smtp = Net::SMTP->new($SMTP);
$smtp->mail($EMAIL_FROM);
$smtp->to($EMAIL_TO);
$smtp->data();
$smtp->datasend($mbox);
$smtp->dataend();
$smtp->quit;
exit;
#######################################################################
Jedine co potrebujes je PERL a perlovy modul libnet-1.0901, ktery si
muzes stahnout z http://search.cpan.org/search?dist=libnet
Pouziti utility je zhruba podle tveho zadani:
cat test.mbox | ./mailforward.pl localhost pasek at idc.cz pasek at idc.cz
Pozn.:
Tento perlovy skript neni buhvi jak rychly, ani nema interaktivni menu,
ani se neumi forkovat natoz vyuzivat sdilenou pamet nebo semafory.
Nepredpokladam, ze je to pro tebe dulezite. Dela proste to co asi chces :-)
Tomas TPS Ulej wrote:
>Nepoznate niekto nejaku hotovu ulilitu, ktora by mi zabespecila:
>
>./utilita mbox-like-email IP-smtp-serveru
>
>Utilita by sa mala spojit na IP-smtp-server a zaslat nan mail vo
>formate mbox
>
>Any idea?
>
>--
>TPS
>
>
>
More information about the Users-l
mailing list