Wumpso: Email an ein Perl-Script schicken

Hallo!

Ich habe einen (Suse Linux Prof. 8.2-) Server bei Hetzner gemietet und habe dort vollen root-Zugriff.
Ich möchte ein Perl-Script schreiben, das ankommende Emails direkt einliest und in eine Datenbank einträgt.
Dazu muss man scheinbar ein Alias (unter /etc/aliases) anlegen und per | "Pipe" an das Programm weiterleiten.

Ich habe das mal mit "cat" getestet und das tut so, wie es soll:
In /etc/mail/aliases habe ich
testalias: "|cat >> /home/test/output.txt"
eingetragen, und siehe da, der Inhalt der Mail ist in der Datei output.txt

Derzeit habe ich dort nur ein kleines Test-Programm in Perl, das den STDIN in eine Datei ausgibt.

Um das zu Testen habe ich einfach mach einen "list"-Befehl in der Shell an das Programm weitergeleitet:
ls | test.pl
Das funktioniert aber leider schon nicht, was funktioniert ist:
ls | perl test.pl

Deshalb habe ich in der Datei /etc/mail/aliases eingetragen:
testalias: "|perl /home/test/test.pl"
Aber dabei passiert gar nichts. Habe schon die Rechte soweit geprüft, denke ich, aber ich komme nicht weiter.

Hat irgendwer einen Vorschlag?

Vielen Dank,

Wumpso

  1. Hallo!

    Hat irgendwer einen Vorschlag?

    Klar, immer ;-)

    Die Mails mit Mail::POP3Client downloaden und im gleichen Script weiterverarzten.

    Gruss, Erwin

    --
    SELFforum - Das Tor zur Welt!
    Theoretiker: Wie kommt das Kupfer in die Leitung?
    Praktiker: Wie kommt der Strom in die Leitung?
    1. Hi,

      ja sehr schön, aber ich möchte nicht dauernd irgendwelche Cron-Jobs laufen haben, die immer wieder nachschauen, ob denn nun ein neues eMail da ist, sondern ein Programm, das nur dann aktiv wird, wenn tatsächlich Mail da ist!!

      Das muss doch irgendwie gehen!

      Viele Grüße

      Wumpso

  2. use Mosche;

    Aber dabei passiert gar nichts. Habe schon die Rechte soweit geprüft, denke ich, aber ich komme nicht weiter.

    Ich kenne ich da leider nicht so gut aus, aber vielleicht gibt es irgendeine Log-Datei, die einen Hinweis geben könnte? Meine erste Idee war, dass du einen ganzen Pfad zu perl angeben musst, aber es hat in einem anderen Fall ja auch ohne funktioniert.

    Mit den rechten: läuft der entsprechende Teil von sendmail (?) überhaupt mit root-Rechten? Ist dein Script für gewisse Benutzer, die sendmail verwendet, zugänglich? Lege es doch mal an einen "neutralen" Ort (/tmp) und teste dann.

    use Tschoe qw(Matti);

    --
      Anyone who quotes me in their sig is an idiot. -- Rusty Russell.