Attachments mit sendmail in perl versenden [gelöst]

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
Duff
Beiträge: 6321
Registriert: 22.03.2005 14:36:03
Wohnort: /home/duff

Attachments mit sendmail in perl versenden [gelöst]

Beitrag von Duff » 02.10.2006 14:50:51

Hallo,

habe auch schon gesucht, kann aber leider nichts brauchbares für mich finden. Ich möchte durch ein perl-Skript eine Logdatei (ist eine .txt-Datei) versenden. Sprich, die Datei soll als Anhang gesendet werden. Zur Zeit versende ich nur den Inhalt der Datei (wird in einem Array gespeichert und ausgegeben).

Bisher sieht die ganze sendmail-Geschichte so aus:

Code: Alles auswählen

open (SENDMAIL, "|/usr/sbin/sendmail -oi -t") or die "Kann sendmail nicht ausfuehren: $!\n";

print SENDMAIL << "EOF";
From: Bla bla
To: $listemail
Subject: Testmail

@sendfile;

EOF
close(SENDMAIL);
Zuletzt geändert von Duff am 04.10.2006 08:45:17, insgesamt 1-mal geändert.
Oh, yeah!

Benutzeravatar
herrchen
Beiträge: 3257
Registriert: 15.08.2005 20:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Re: Attachments mit sendmail in perl versenden

Beitrag von herrchen » 02.10.2006 14:58:59

Duff hat geschrieben: habe auch schon gesucht, kann aber leider nichts brauchbares für mich finden.
http://www.google.de/search?hl=de&sa=X& ... nt&spell=1

--> http://alma.ch/perl/Mail-Sendmail-FAQ.html

sieht doch brauchbar aus.

herrchen

Benutzeravatar
Duff
Beiträge: 6321
Registriert: 22.03.2005 14:36:03
Wohnort: /home/duff

Beitrag von Duff » 02.10.2006 15:14:17

Ja danke, aber die Sachen habe ich auch schon alle gefunden. Suche eigentlich nach einer vielleicht "einfacherern" und "kürzeren" Lösung (wenn es das gibt). Habe es auch mal hier versucht http://www.perl.com/CPAN/.

Will doch eigentlich nur eine Text-Datei mit anhängen und nicht nur den Inhalt der Datei in die Email packen.
Oh, yeah!

Benutzeravatar
Duff
Beiträge: 6321
Registriert: 22.03.2005 14:36:03
Wohnort: /home/duff

Beitrag von Duff » 04.10.2006 08:44:51

So, habe es nun so lösen können:

Code: Alles auswählen

use MIME::Lite;
# TEXT
my $message = MIME::Lite->new(
        From => 'Test',
        To => "$listemail",
        Subject => "Test-Mail vom $datum",
        Type => 'MIME-Type',
        #Encoding => 'Content-Encoding',
        Path => '/Pfad/zur/Text.txt'
);

# Das ganze verschicken

$message->send(); # UNIX-sendmail

exit;
Oh, yeah!

Antworten