winlicli
Goto Top

Mailversand mit der Linux-Bash und mailx

Hallo zusammen,

ich habe ein Bashskript dass einige Logs parsen soll und mir danach eine Mail mit den gefundenen Infos als Dateianhang zu schicken soll.
In den Dateien gibt es auch Umlaute die ich drin behalten möchte und die Technik dazu bringen will dies korrekt auszugeben.

Das Problem nun ist, dass die Umlaute im Anhang nicht korrekt angezeigt werden. Der Grund ist, weil das Charset nicht auf UTF-8.
Ich habe bereits das Netz durchsucht und alte Lösungen gefunden, die nicht mehr mit den aktuellen mailx Parametern vereinbar sind.

Weis jemand, wie man mailx dazu bringt, Mails mit UTF-8 zu verschicken?

Gearbeitet wird mir einem deutschen Centos 7.

Lg und danke für hilfe

Content-ID: 532124

Url: https://administrator.de/contentid/532124

Ausgedruckt am: 24.11.2024 um 14:11 Uhr

Dani
Dani 06.01.2020 um 22:43:49 Uhr
Goto Top
Moin,
Weis jemand, wie man mailx dazu bringt, Mails mit UTF-8 zu verschicken?
es gibt dazu im Bugtracker den Beitrag 0007491: mailx does not handle utf-8 chars in From when creating e-mail. Hab's allerdings am Smartphone nur grob überfliegen können.


Gruß,
Dani
WinLiCLI
WinLiCLI 07.01.2020 aktualisiert um 08:37:10 Uhr
Goto Top
Von 2014 ist das und eine wirkliche Lösung haben die auch nicht genannt. Gibt es andere Tools mit denen man Mails in utf8 versenden kann?
godlie
godlie 07.01.2020 um 09:32:04 Uhr
Goto Top
Hallo,

also wenn man sich die man page von mailx ansieht, dann findet man dort folgendes:
Mailx normally detects the character set of the terminal using the LC_CTYPE locale setting. If the locale cannot be used appropriately, the ttycharset variable should be set to provide an explicit value
und
The character set for outgoing messages is not necessarily the same as the one used on the terminal. If an outgoing text message contains characters not representable in US-ASCII, the character set being used must be declared within its header.
somit ergeben sich 2 Lösungen:
a) explizites setzen der LC_CTYPE innerhalb deines Scripts
b) mailx rauswerfen und durch mutt ersetzen
mutt -e 'set content_type=text/plain; charset=utf-8;' -s 'My subject' me@my.com < msg.txt  
WinLiCLI
WinLiCLI 07.01.2020 um 13:56:38 Uhr
Goto Top
funktionierte der mutt befehl bei dir?
bei mir brachte er in dieser form:

mutt -e 'set content_type=text/plain; charset=utf-8;' -s 'My subject' -a file.txt meinemail@mail.de

folgenden fehler:

Fehler in Kommandozeile: charset=utf-8: Unbekanntes Kommando

ich habe die >'< auch durch >"< ersetzt. leider der selbe fehler
godlie
Lösung godlie 07.01.2020 um 14:05:40 Uhr
Goto Top
Hallo,

ach da ist mir doch ein Denkfehler unterlaufen

mutt -e 'set content_type=text/plain;' -e 'set send_charset=utf-8;' -s 'My subject' me@my.com < msg.txt  

optional kannst du mit -a file.xy noch ein file attachments erzeugen
WinLiCLI
WinLiCLI 07.01.2020 um 16:36:58 Uhr
Goto Top
danke, das hat tatsächlich geklappt.
schade das mailx das auch nicht so kann.

danke und lg face-smile