Volkers Editorial

eMail und die Detektive

Lange her und schon fast vergessen sind die Hilfsmittel, mit denen die ersten E-Mails verschickt wurden. Bei der damaligen Technik musste noch viel "zu Fuß" gemacht werden. Heute haben wir es - Linux sei Dank - viel einfacher. Doch ein Blick zurück lehrt uns, sich an die eine oder andere Schraube zu erinnern, an der damals noch von Hand gedreht wurde…

Schon fast etwas nostalgisch blicke ich auf meine erste Internet-Erfahrung zurück: Das war an einem Text-Terminal (an Grafik war gar nicht zu denken) an einer HP-UX-Maschine, und eine E-Mail verschickte man damals nur mit:

mail adressat@maschine < nachrichten-datei

Dabei wurde nachrichten-datei natürlich vorher mit dem vi-Editor erstellt - nur die Profis arbeiteten damals mit emacs - durften sie aber nicht immer, denn emacs verballerte etwa ein Zehntel des Hauptspeichers unseres Zentralrechners, und nicht selten geriet man aneinander, weil jemand mit seinem emacs 2 MB Hauptspeicher wegfraß. Ich war jedenfalls stolz wie Oscar, als ich die ersten Mails mit einem alten Schulfreund in Amerika wechselte. In dieser frühen Zeit war das mit das schnellste Mittel mitzuteilen, wie die Spiele in der Bundesliga ausgegangen waren. Auch eine der schönen Sachen war die Möglichkeit, mit talk persönliche Kontakte in die ganze Welt aufrecht zu erhalten. Ich habe eine Bekannte in Ecuador, und wenn Ecuador mal gerade nicht wieder im Krieg mit Peru lag [1], konnte ich mich mit dem talk-Kommando sehr gut mit ihr unterhalten. Angesichts der heutigen Möglichkeiten mit Chaträumen, IRC [3] etc. schon fast lächerlich - aber so war es nun einmal. So sparte man sich die damals noch ungeheuerlichen Telefonkosten für Überseegespräche. Etwas nervig waren nur die unterschiedlichen Realitäten der verschiedenen Zeitzonen mit einem Unterschied von unzähligen Stunden: Da war der andere noch nicht ganz aus den Federn, während ich schon längst an Feierabend dachte… Das ist wie Vergangenheit und Zukunft gleichzeitig - nur anstrengender.

Zeilenumbrüche

Ebenso gab es damals auch schon die unterschiedlichsten Maschinen, die alle die unterschiedlichsten Standards verwendeten. So hatte ich oft Mails, in denen jegliche Zeilenumbrüche fehlten. Das konnte beim Lesen schon sehr nervig sein, denn so ein Textbildschirm kippte nach 80 Zeichen einfach in die nächste Zeile - sehr zur Freude der Wörter, die mittendrin zerschnitten wurden und etliche Zentimeter weiter links weitergingen - oder (je nach Einstellung) nach dem Ende der Zeile wurde der Rest erst gar nicht mehr angezeigt.

Die Rettung für solche Schlangen-eMails war damals das Kommandopaar expand und fold: Mit expand ließen sich die lästigen Tabulatoren in Leerzeichen umwandeln, und mit dem fold-Kommando bekam man schließlich auch die Zeilenumbrüche auf eine Art und Weise hin, bei der die Wörter keinen so großen Schaden nehmen. Doch schauen wir uns zuerst expand an:

Das Dumme an den Tabulatoren ist, dass so ziemlich jeder seine eigene Einstellung dafür bevorzugt. Manche haben einen Abstand von acht Zeichen, manche nur zwei; jeder macht das halt anders. Die Datei text_mit_tab.txt enthalte z. B. zwischen jedem Wort einen Tabulator.

Datei text_mit_tab.txt

In[Tab]diesem[Tab]Text[Tab]erscheinen[Tab]viele[Tab]Tabulatoren.

Um diese Tabulatoren auszumerzen, bedarf es nur eines einfachen

expand text_mit_tab.txt > text_ohne_tab.txt

Wenn man sich diese ansieht, scheint man nichts gewonnen zu haben:

text_mit_tab.txt nach Anwendung von

expand
In      diesem  Text    erscheinen      viele   Tabulatoren.

Doch hier hilft ein weiteres Kommando: Der sed-Befehl kann nämlich auf einfache Art und Weise n-fache Leerzeichen in einzelne verwandeln. Der folgende Aufruf wird genutzt, um dreimal hintereinander (deshalb das Tripel desselben Teil s/ / /g getrennt durch Semikoli) ein doppeltes Leerzeichen in ein einfaches zu wandeln. So macht man aus acht vier, aus vier zwei und aus den restlichen zwei eines:

sed "s/  / /g;s/  / /g;s/  / /g" text_ohne_tab.txt > text.txt

Wem die Funktionsweise noch nicht ganz klar ist, der sollte erstmal

sed "s/  / /g" text_ohne_tab.txt > text.txt

probieren. Dann wird an der Ausgabe klar, dass ein einfaches Benutzen von s/ / /g nicht reicht, denn es wird nur die Anzahl von aufeinander folgenden Leerzeichen halbiert aber nicht auf ein einfaches Leerzeichen gebracht.

text.txt mit ein- und dreifachem

s/ / /g

im

sed
In   diesem Text  erscheinen   viele  Tabulatoren.
In diesem Text erscheinen viele Tabulatoren.

Sauberes Abschneiden

Danach können wir unsere Datei nun mit sauberen Zeilenumbrüchen versehen. An unserer Beispieldatei seien das mal nur 20 Zeichen, damit man etwas sieht. Die einfache Anwendung des fold-Kommandos für 20 Zeichen sieht so aus:

fold -20 text.txt

Das sieht nun eher wie eine missglückte Quadratur des Kreises aber nicht wie eine gelungene Formatierung aus:

$ fold -20 text.txt
In diesem Text ersch
einen viele Tabulato
ren.

Erst die Benutzung der Option -s sorgt dafür, dass das fold-Kommando nicht versucht ist, mitten im Wort umzubrechen, sondern statt beim 20. Zeichen beim letzten Leerzeichen davor.

$ fold -20 -s text.txt
In diesem Text
erscheinen viele
Tabulatoren.

Und das Ganze gibt es dann auch noch als Einzeiler, wodurch die lästigen Zwischendateien entfallen:

$ expand tabtext.txt | sed "s/ / /g;s/ / /g;s/ / /g" | fold -s -20
In diesem Text
erscheinen viele
Tabulatoren.

LinuxCommunity kaufen

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

Deutschland

Ähnliche Artikel

  • Sauber verzahnt
    Verbinden, trennen, umformatieren: Unter Linux gibt es zahlreiche kleine Helfer, die die Arbeit mit Textdateien perfekt beherrschen – und die dazu noch perfekt zusammenarbeiten.
  • Fortgeschrittenes Arbeiten mit dem Editor Vim
    Mit wenigen Handgriffen wird aus dem vermeintlich kryptischen Editor Vim ein komfortables und flexibles Werkzeug zur Bearbeitung von Texten.
  • Echt einfach
    Einfache Formatierungen für Wikis oder HTML-Seiten erzeugen Sie am schnellsten mit Markdown. Der Editor Utext hilft Ihnen unter Ubuntu und dessen Ablegern beim Erstellen und Bearbeiten solcher Texte.
  • Latex-Editor mit Tabs und Folding

    Texmaker, ein Editor für den Textsatz mit Latex, ist in Version 2.3 mit neuen Features erhältlich.
  • Mehr Komfort
    Von einfachen Abfragen bis hin zu komplexen Menüs: Mit dem Toolkit Dialog bauen Sie eine grafische Oberfläche für Shell-Skripte, die oft nicht mehr als eine zusätzliche Zeile brauchen.
Kommentare

Infos zur Publikation

LU 08/2016: Multimedia

Digitale Ausgabe: Preis € 5,99
(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!

Aktuelle Fragen

Wie kann man das berichtigen
Udo Muelle, 17.07.2016 20:39, 1 Antworten
Fehlschlag beim Holen von http://extra.linuxmint.com/dists/rosa/main/binary-i386/Packages Hash-S...
Installation Genimotion
Horst Müller, 15.07.2016 17:00, 1 Antworten
Hallo, ich kann Genimotion nicht installieren. Folgende Fehlermeldung habe ich beim Aufruf erh...
Probleme beim Hochfahren der Terastaion 5400 mit Unix-Distrib
Sheldon Cooper, 10.07.2016 09:32, 0 Antworten
Hallo ihr lieben, habe seit zwei Tagen das Problem, das das NAS (Raid5) nicht mehr sauber hoch...
Mit Firewire Videos improtieren?
Werner Hahn, 09.06.2016 11:06, 5 Antworten
Ich besitze den Camcorder Panasonic NV-GS330, bei dem die Videos in guter Qualität nur über den 4...
lidl internetstick für linux mint
rolf meyer, 04.06.2016 14:17, 3 Antworten
hallo zusammen ich benötige eure hilfe habe einen lidl-internetstick möchte ihn auf linux mint i...