GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Eine eingehende Mail von Text/plain zu Text/html ändern?

Ich verwende Mutt, um meine E-Mails zu verarbeiten. Es gibt einen Absender, der den falschen Inhaltstyp deklariert. Die Mail kommt mit

Content-Type: multipart/alternative;
  boundary=--…

und besteht aus zwei Teilen. Sie werden wie folgt deklariert:

Content-Type: text/plain; charset=utf-8

und

Content-Type: text/html; charset=utf-8

Beide Teile der Mail sind jedoch gleich. Der Klartextteil ist also genauso voll von HTML-Tags wie der HTML-Teil. Ich habe versucht, es mit dem Absender zu besprechen, aber er verwendet eine Art „Unternehmens“-Software, bei der er diese Einstellungen nicht ändern kann.

Also möchte ich die Mail lokal ändern und vielleicht den text/plain entfernen -part oder text/plain umschreiben nach text/html .

Was halten Sie für den besten Weg und welche Tools kann ich verwenden, um in meinem Fall eine lesbare Mail zu erhalten?

Akzeptierte Antwort:

In mutt kannst du v eingeben , und wählen Sie dann die Alternative aus, die Sie anzeigen möchten. Sie können den Inhaltstyp eines Teils auch mit Strg-E ändern .

Als generischer Ansatz könnten Sie mutt verwenden ‘s display_filter Einstellung:

set display_filter=/path/to/mutt-filter

Mit mutt-filter so etwas wie:

#! /usr/bin/awk -f
BEGIN {
  cmd="echo '[automatically converted from html to text]'; w3m -T text/html -dump"
}
{l=tolower($0)}
l ~ /<html|<!doctype html/,l ~ /</html>/ {
  print | cmd
  next
}
{close(cmd); print}

Was dazu führen würde (in welchem ​​\u200b\u200bmutt angezeigt wird, nicht die Roh-E-Mail) irgendetwas zwischen <html> und </html> um durch w3m -T text/html -dump zu gehen (oder elinks -dump oder Ihr bevorzugtes html zu text Konverter).

Da dies möglicherweise Dinge konvertiert, die nicht beabsichtigt sind (wie wenn <html> erscheint in einem echten text/plain Teil), möchten Sie es vielleicht so anpassen, dass es nur auf E-Mails von Leuten funktioniert, die gefälschte E-Mails senden, oder einen noch ausgefalleneren Ansatz wie das Zählen der Anzahl der Tags und das Konvertieren bei Erreichen eines Schwellenwerts …


Linux
  1. Extrahieren von Text aus MS-Word-Dateien in Python

  2. Wie kopiere ich Text von meinem xterm ohne Maus?

  3. So entfernen Sie doppelte Wörter aus einer Nur-Text-Datei mit dem Linux-Befehl

  4. Konvertieren Sie alle Linux-Manpages in Text / HTML oder Markdown

  5. Wie kann ich Klartext in Linux rechtfertigen?

So erstellen Sie Verzeichnisse aus einer Textdatei unter Linux

Entfernen Sie ungerade oder gerade Zeilen aus einer Textdatei

Wie extrahiert man Text mit OCR aus einem PDF unter Linux?

So kopieren Sie Text von less

HTML in unformatierten Klartext?

Wie zeigt man bestimmte Zeilen aus einer Textdatei in Linux an?