AA_123RF_40349124_Post-Briefschlitz_ABImages.jpg

© ABImages, 123RF

E-Mails auf der Shell lesen mit Alpine und Mail

Postillion

Viele Shell-Kommandos dienen der Arbeit im Netzwerk. In diesem Beitrag lernen Sie die Arbeit mit E-Mail-Programmen kennen, die ohne grafische Oberfläche arbeiten.

Eine E-Mail ist im Grunde eine Textdatei, die bestimmten, über die Jahre etablierten Standards folgt, sodass Software die enthaltenen Daten zum Versand, Empfang und zur Anzeige verwenden kann. Wenn Sie GUI-Programme zum Lesen und Schreiben von Mails verwenden, bekommen Sie von dieser Grundlage kaum etwas mit.

Anders sieht es dagegen aus, wenn Sie einen E-Mail-Client (Mail User Agent, MUA) für die Shell einsetzen: Dann sind Sie in der Lage, Mails innerhalb einer Shell-Sitzung zu senden und zu empfangen. Auch Shell-Skripte können das. Planen Sie aber, dass Nachrichten den lokalen Host verlassen, setzt das voraus, dass Sie den Mail Transport Agent (MTA) entsprechend konfigurieren.

Der Ursprung der Mail als Textdatei zeigt sich, wenn Sie planen, einen Anhang zu versenden. Das Anfügen eines binären Attachments geschieht bei GUI-Programmen häufig vom Benutzer unbemerkt unter der Oberfläche. Beim automatisierten Mail-Versand per Shell-Kommando fällt das Aufbereiten der Daten jedoch in der Regel auf Sie zurück.

Dafür gibt es entsprechende Tools. Sie wandeln die binäre Information in ASCII-Zeichen um (MIME) und erzeugen so eine Nutzlast, die sich per Mail versenden lässt. Der Empfänger wandelt diese Daten dann wieder in das Ausgangsmaterial zurück.

Zum Umwandeln verwenden Sie die Programme Uuencode und Uudecode aus dem Paket sharutils, Mpack oder Uudeview. Eine Ausnahme bildet dabei die Software Mpack: Damit verschicken Sie bei Bedarf ohne Zuhilfenahme eines Mail-Programms Daten, die nicht als Text vorliegen, direkt an den Empfänger.

In Listing 1 dient die Datei eskil.pdf als Beispiel. Dabei kodieren die ersten beiden Zeilen lediglich die Datei. Der Befehl in Zeile 1 schreibt das Ergebnis auf die Standardausgabe, während das Kommando aus Zeile 2 die Daten in eine Datei umlenkt. Das Kommando in Zeile 3 versendet das Ergebnis direkt mit dem Mail-Befehl. Die Option -m weist Uuencode an, die angegebene Datei ins Base64-Format umzusetzen.

Listing 1

$ uuencode -m Datei Datei
$ uuencode -m Datei Datei > Ausgabedatei
$ uuencode -m Datei Datei | mail -s "Betreff" User@Rechner
$ mpack -s "Betreff" Datei User@Rechner
$ uuenview -b -o Datei
$ uuenview -b -m User@Rechner Datei

Verwenden Sie Mpack, gehen Sie wie in Zeile 4 vor. Der Parameter -s gibt den Betreff für die Nachricht an. Abbildung 1 zeigt beide Programme im Einsatz. Uuenview bietet eine kompaktere Syntax zum Umwandeln der Datei sowie die Möglichkeit, wie mit Mpack die Daten direkt zu versenden (Zeile 6).

Abbildung 1: Den Inhalt binärer Anhänge müssen Sie vor dem Versand erst entsprechend kodieren.

Alle diese Fälle setzen voraus, dass Sie den MTA (Exim, Sendmail, Postfix) dazu konfiguriert haben, die so erzeugten Mails vom lokalen Rechner aus zu verschicken. Dabei sollte das Übertragen zum externen SMTP-Server aktuellen Standards (TLS/SSL-Verschlüsselung) entsprechen.

Mail

Der MUA mit dem selbsterklärenden Namen Mail liegt nicht nur fast jeder Linux-Distribution bei, sondern findet sich auch auf vielen anderen auf Unix basierenden Betriebssystemen. Er versetzt Sie auf relativ einfache Weise in die Lage, E-Mails zu senden und zu empfangen.

Das Programm bietet außerdem die Möglichkeit, die Ausgabe eines Terminals oder den Inhalt einer Textdatei direkt per Pipe zu versenden (Listing 2, erste Zeile). In der Praxis ließe sich so beispielsweise täglich per Skript der Füllstand der Dateisysteme eines Rechners per E-Mail übermitteln (Zeile 2).

Listing 2

$ Programm | mail -s "Betreff" User@Rechner
$ df -h | mail -s "Plattenbelegung Rechner-3" hz@localhost

Für das Arbeiten im Dialog rufen Sie Mail einfach über den Programmnamen auf. Möchten Sie explizit auf eine Mailbox zugreifen, rufen Sie die Software mit der Option -f Datei auf. Das Programm erwartet dann ein File im Mbox-Format.

Die Abbildung 2 zeigt Mail direkt nach dem Aufruf. Über die Eingabe von Zahlen springen Sie zum entsprechenden Listeneintrag. Die zum Bedienen notwendigen Tasten finden Sie in der Tabelle "Auf Knopfdruck". Abbildung 3 und Abbildung 4 zeigen das Lesen und Beantworten einer E-Mail mit dem Programm. Den Text der Nachricht schließen Sie mit einem einzelnen Punkt ab.

Auf Knopfdruck

Taste Aktion
[D] Mail löschen
[F] Kopfzeile der Mail ausgeben
[H] Mails auflisten
[M] Mail verfassen
[R] Mail beantworten (Absender und alle anderen Empfänger)
[Umschalt]+[R] Mail beantworten
[U] Löschen rückgängig
[Q] Programmende
Abbildung 2: Verwenden Sie keine speziellen Parameter beim Aufruf, startet Mail mit einer Liste aller Nachrichten, die sich in der Inbox befinden.
Abbildung 3: Das Lesen einer Nachricht erinnert an den Einsatz eines Pagers im Terminal. Tatsächlich kommt ein solcher bei der Anzeige zum Einsatz.
Abbildung 4: Haben Sie eine Nachricht empfangen und wollen auf diese antworten, drücken Sie einfach R, wobei das dann auch die Empfänger im CC: umfasst.

Eine neue E-Mail verfassen Sie über [M] und der Angabe des Empfängers. Die Software fragt nach dem Betreff, anschließend geben Sie den Text ein. Diesen schließen Sie in einer gesonderten Zeile mit einem einzelnen Punkt ab. Danach fragt das Programm nach weiteren Empfängern der Nachricht (Abbildung 5).

Abbildung 5: Nachrichten beantworten Sie mit Mail, indem Sie den Nachrichtentext als ASCII verfassen und mit einem einzelnen Punkt auf der letzten Zeile abschließen.

Alpine

Das Programm Alpine bietet durch eine Menüsteuerung etwas mehr Komfort als das spartanische Mail. Die umfangreichen Konfigurationsmöglichkeiten ermöglichen das individuelle Anpassen des Programms an die persönlichen Bedürfnisse.

Innerhalb der Strukturen der Software bewegen Sie sich entweder über die Pfeiltasten, um an die verschiedenen Menüpunkte zu gelangen, oder Sie verwenden die entsprechenden Hotkeys. Ins Hauptmenü gelangen Sie stets über [M]. Nach dem Start sehen Sie die Übersicht des Programms (Abbildung 6). Von hier aus nehmen Sie die notwendigen Einstellungen für den ersten Einsatz vor.

Abbildung 6: Der E-Mail-Client Alpine bietet über Menüs etwas mehr Komfort als der spartanische MUA Mail.

Drücken Sie zunächst [S], um ins Setup-Menü zu gelangen. Hier legen Sie, sofern notwendig, den Drucker fest, auf dem Sie Nachrichten ausgeben möchten. Drücken Sie dazu [P]. Blättern Sie anschließend bis zum Punkt Printer List, und wählen Sie dort den angebotenen Drucker. Zum Ausdrucken verwenden Sie später [Y]. Dies müssen Sie aber erst bei der Grundkonfiguration einstellen (siehe Tabelle "Erste Konfiguration"). Mit [E] verlassen Sie das Einstellungsmenü, wobei Sie das Speichern bestätigen müssen.

Drücken Sie [S] und anschließend [C], um zu den allgemeinen Einstellungen zu gelangen. Die Software schlägt einige Einträge vor (siehe Tabelle "Erste Konfiguration"), die das Arbeiten auf dem lokalen System ermöglichen. Ansonsten genügen erst einmal die Standardeinstellungen.

Erste Konfiguration

Eintrag Wert Hinweis
Personal Name EigenerName
User Domain localhost für lokale Mail
Alternate Compose Menu X
Alternate Role (#) Menu X
Enable Delivery Status Notification X
Warn if Blank Subject X warnt beim leeren Betreff
Prefer Plain Text X bei Multipart-Mails den Textteil bevorzugen
Enable Print Via Y

Eine farbige Ausgabe erhalten Sie durch den Aufruf [S],[K]. Hier tauschen Sie im oberen Bereich den Eintrag no-color durch einen anderen aus. Anschließend stellen Sie hier ein persönliches Design zusammen. Die Software legt die Einstellungen anschließend in der Datei .pinerc im Home-Verzeichnis ab.

Möchten Sie mit mehreren E-Mail-Adressen arbeiten, fallen einige weitere Schritte bei der Konfiguration an. Legen Sie zunächst für das Speichern der Passwörter mit dem Befehl touch .pine-passfile im Home-Verzeichnis eine leere Datei an. Drücken Sie anschließend [S],[C], und blättern Sie abwärts, bis Sie den Punkt Advanced User Preferences erreichen. Hier wählen Sie Expose Hidden Config aus.

Blättern Sie weiter, bis Sie bei Normally hidden configuration options anlangen. Bei Incoming Folders tragen Sie die weiteren Postfächer ein, jeweils durch ein Komma getrennt, was manchmal etwas unübersichtlich ausfällt. Ein Eintrag folgt jeweils der Syntax aus Listing 3.

Listing 3

Ordner {Mailserver/Verschlüsselung/user=E-Mail-Adresse}inbox

Listing 4, ein Auszug aus einer Muster-Konfigurationsdatei .pinerc, zeigt, wie diese Einträge in der Praxis aussehen. Es handelt sich jeweils um ein lokales Postfach, einen Zugang via POP3 und einen IMAP-Account. Dabei trägt die Software nur Abweichungen von default sowie belegte Werte ein. Die angelegten Mail-Konten lauten hz, berg und tal.

Listing 4

personal-name=Vorname Name
user-domain=example.com
smtp-server=mail.example.com
# Path of (local or remote) INBOX, e.g. ={mail.somewhere.edu}inbox
inbox-path={mail.example.com/pop3/user=berg@example.com/ssl}inbox
# e.g. feature-list= select-without-confirm, signature-at-bottom
feature-list=enable-print-via-y-command,
default-composer-hdrs=berg@example.com
customized-hdrs=From: Vorname.Name<berg@example.com>
# List of incoming msg folders besides INBOX, e.g. ={host2}inbox, {host3}inbox
incoming-folders=lokal /var/mail/hz, imap {mail.example.com/tls/user=tal@example.com}inbox
printer=lpr
patterns-roles=LIT:pattern="/NICK=lokal/COMM=lokale Mails\\n/ TO=/FROM=/SENDER=hz@localhost/FLDTYPE=EMAIL/FOLDER=\/var\/mail\/hz" action="/ROLE=1/FROM=Vorname Name <hz@localhost>/SMTP=localhost/RTYPE=YES/FTYPE=YES/CTYPE=NO", LIT:pattern="/NICK=tal/COMM=IMAP-Benutzer\\n/FROM=From:Vorname Name <tal@example.com>/SENDER=From: Vorname Name <tal@example.com>/FLDTYPE=EMAIL" action="/ROLE=1/FROM=Vorname Name <tal@example.com>/RTYPE=YES/FTYPE=YES/CTYPE=NO", LIT:pattern="/NICK=berg/COMM=E-Mail Aussenwelt\\n/ SENDER=From: Vorname Name <berg.example.com>/FLDTYPE=EMAIL" action="/ROLE=1/FROM=Vorname Name <berg@example.com>/RTYPE=YES/FTYPE=YES/CTYPE=NO"

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 8 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Alt, aber kraftvoll
    Sie haben die Nase voll von Mailprogrammen, die auf klickbare Oberflächen, Maus und Popupmenüs angewiesen sind? Dann sind Pine oder Mutt das Richtige für Sie..
  • Dr. Linux
    Komplizierte Organismen, wie Linux-Systeme es nun einmal sind, haben so ihre ganz eigenen Wehwehchen. Dr. Linux beobachtet die Patienten in den Linux-Newsgruppen, stellt an dieser Stelle Rezepte für aktuelle Probleme aus und alternative Heilmethoden vor.
  • Es muss nicht immer Netscape sein
    Kommunikation heißt das zweite Standbein unseres Schwerpunktes in dieser Ausgabe. Wir stellen Ihnen in diesem Artikel drei Mail-Clients vor – zwei als X11-Anwendung, also mit grafischer Oberfläche, und einen konsolenbasierten.
  • mail, mailx, Mail
    Das Programm mail bietet zwar auf den ersten Blick längst nicht den Komfort anderer Clients unter Linux, hat aber neben den Standardfunktionen eine ganze Reihe Optionen, die es zur ersten Wahl bei einem Kommandozeilen-gesteuerten Einsatz (z. B. in Skripten) machen.
  • Ximian Evolution 1.0.3
    Warten lohnt sich: Aus Ximians vielbeachtetem Projekt eines E-Mail-Programms à la Outlook ist ein funktionierender Mail User Agent namens Evolution geworden.
Kommentare

Infos zur Publikation

LU 02/2018: PAKETE VERWALTEN

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Wifikarte verhindert Bootvorgang
Maik Kühn, 21.01.2018 22:23, 0 Antworten
iwlwifi-7265D -26 failed to load iwlwifi-7265D -25 failed to load iwlwifi-7265D -24 failed to l...
sharklinux
Gerd-Peter Behrendt, 18.01.2018 23:58, 0 Antworten
Hallo zusammen, ich habe sharklinux von der DVD Installiert. 2x, jedesmal nach dem Reboot ist di...
Anfänger sucht Ratschläge
Alucard Nosferatu, 18.01.2018 21:56, 3 Antworten
Guten Tag, meine Wenigkeit würde gerne auf einer meiner Festplatten von meinen Feldrechnern e...
Suchprogramm
Heiko Taeuber, 17.01.2018 21:12, 1 Antworten
Hallo liebe Community, keine Ahnung ob dieses Thema hier schon einmal gepostet wurde. Ich hab...
Linux Mint als Zweitsystem
Wolfgang Robert Luhn, 13.01.2018 19:28, 4 Antworten
Wer kann mir helfen??? Habe einen neuen Laptop mit vorinstaliertem Windows 10 gekauft. Möchte g...