AW: Mail schrumpft auf dem weg vom Server auf den PC
Andre Tann
atann at alphasrv.net
Mo Dez 12 15:44:17 CET 2022
Ich antwort mal wieder an die Liste:
On 12.12.22 15:20, Uwe Drießen wrote:
> Ja haut euch :-))
Nö, wir sind friedlich, und denken laut nach :D
> \1 ist was ?
\1 referenziert, was in der ersten Klammer gefunden wurde. Uwe Du mußt
aufpassen, daß Dir Dein Thunderbird alles anzeigt, und nicht /text/
einfach nur kursiv anzeigt, ohne die slashes. So sah der sed aus:
/^from:/s/.*<\(.*\)>.*/\1\t\t\t550 reject go away/
Der Witz an .*<(.*)>.* ist:
| | |
| | +--alles nach der letzten schließenden
| | spitzen Klammer
| +--alles innerhalb der spitzen Klammern
+--alles vor der letzten spitzen Klammer
- wegen der .* am Anfang und am Ende wird auf jeden Fall die ganze Zeile
getroffen, d.h. also ersetzt mit dem, was rechts angegeben ist
- die Klammern in der Mitte umfassen alles, was zwischen spitzen
Klammern notiert ist. Das funktioniert nur richtig, wenn < und > nur
einmal vorkommen in der Zeile, was aber hier der Fall ist, und nur wenn
< vor > steht, und nicht wenn > vor < kommt :)
\( und \) statt ( und ) nur, weil sed da bißl komisch ist, und die
Klammern sonst buchstäblich auffassen würde statt als
Schiebs-in-den-ersten-Buffer-Aufforderung.
Also heißt die ganze Sache übersetzt so:
1. Suche nur in Zeilen, in denen from: am Zeilenanfang steht
2. Suche komplette Zeilen, die < und > enthalten, und schiebe alles
zwischen < und > in den ersten Buffer, sprich also die E-Mail-Adresse.
3. Ersetze alles, was gefunden wurde (nämlich die ganze Zeile, wegen .*
vorn und hinten), mit dem Inhalt des ersten Buffers (\1), also der
E-Mail-Adresse, gefolgt von "\t\t\t550 reject go away"
--
Andre Tann
Mehr Informationen über die Mailingliste Postfixbuch-users