PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mail mit anhang versenden



averlon
15.07.13, 12:11
Hallo,
das thema mail mit anhang versenden ist ja nicht so einfach. Suche schon seit tagen im netz, finde lösungen, aber meist funktionieren sie nicht.

Voraussetzung: Es soll nur mail, mailx oder sendmail zum einsatz kommen weil die auf den meisten systemen vorhanden sind.

Ich habe verstanden, dass der zu sendende inhalt mit mime-parametern versehen werden muss.

Zum einsatz soll ein derartiges kommando kommen:

cat /tmp/test.txt | sendmail receiver@x.de

Mittlerweile habe ich folgende daten in der datei "/tmp/test.txt":



From: absender@x.de (absender name in langschrift)
Subject: hier ein betreff
Mime-Version: 1.0
Content-Type: Multipart/Mixed; boundary="ATTACHMENT-BOUNDRY"

--ATTACHMENT-BOUNDRY
Content-type: text/plain; charset=UTF-8
Content-Disposition: inline

hier steht der BODY-Text

--ATTACHMENT-BOUNDRY
Content-type: text/plain; charset=UTF-8; name="/tmp/werte.txt"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment; filename="werte.txt"

messtelle;datum;wert cm
location;15.07.13;880
location;14.07.13;880
location;13.07.13;880
location;12.07.13;879
location;11.07.13;877
location;10.07.13;877
location;09.07.13;877
location;08.07.13;877
location;07.07.13;877
location;06.07.13;877
location;05.07.13;876
location;04.07.13;875
location;03.07.13;874

--ATTACHMENT-BOUNDRY--


Wenn ich diese datei mit dem kommando:

cat /tmp/test.txt | sendmail receiver@x.de

wegschicke dann kommt folgendes an:

- richtige absender adresse und richtiger absender in langschrift
- richtiger betreff
- die nachricht mit dem vollständigen BODY-Text (auch richtig formatiert).
- eine trennlinie
- die werte der tabelle
- und ein anhang mit der tabelle als textdatei mit dem namen "werte.txt" die ich öffnen oder speichern kann.

Auch alles richtig formatiert.

Allerdings: Die werte wollte ich nur (nur) als anhang haben und nicht im text der nachricht auch noch.

Ich habe gefühlt 1000 versuche hinter mir - es gelingt mir nicht.

Ich bitte um hilfe.

Newbie314
15.07.13, 14:11
Soweit ich mich erinnere ist "cat" nur ein Kommando um Textdateien zu mergen, d.h. du versendest letztendlich genau das was du erhältst.

ICh würde versuchen den Anhang (hier die Textdatei) in Mime zu codieren und dann einen "binary concatenate" (soweit ich mich erinnere können "cp" und "Mv" dies) verwenden und dann das Resultat versenden. Ausprobiert habe ich das nie.

Alternativ: eine Mail mit diesem Attachment mal mit Thunderbird versenden und die empfangene MAil bzw die Mail im "sent" Ordner mit Hex Editor analysieren.

L00NIX
15.07.13, 16:36
Das Programm mutt kann mit der immer am Ende stehenden Option -a Anhänge versenden.

Gruß
L00NIX

TheDarkRose
15.07.13, 16:47
Hmm, welcher Client? Ich vermute das die Funktion des Clients, dass darstellbare Anhänge direkt unter dem Emailbody angezeigt werden. Kenne das vor allem von Bildanhängen.

Huhn Hur Tu
15.07.13, 20:30
$ uuencode bild1.jpg bild2.jpg > anhang.txt
$ mailx -s 'Foto' bigboss@company.xx < anhang.txt

averlon
19.07.13, 06:44
Hi,
danke für die Antworten.

Ich habe mittlerweile gemerkt, dass ich alles richtig gemacht habe.

Auch wenn die nachricht manuell mittels thunderbird erstellt wird hat sie das gleiche aussehen. In outlook als empfänger wird es anders dargestellt. Da erscheint der inhalt des anhangs nicht (nicht) im body-text.

Unabhängig davon geht das verfahren das ich angewandt habe natürlich nur mit reinen textdateien. Das mit uuencode werde ich noch einbauen.

Mutt ist keine option weil nicht auf allen systemen standardmässig verfügbar - hatte ich ja als eingangsvoraussetzung geschrieben.

Danke - gelöst.

TheDarkRose
19.07.13, 08:37
Sicher geht dein Verfahren auch mit binären Dateien, du musst diese nur zuerst Base64 codieren.

linosch
03.08.13, 22:17
In vielen Distributionen gibt es auch das Paket: sendemail
Das löst auch das eine oder ander Problem beim Versand von der CLI