Am 21.06.24 um 10:43 schrieb Christian Brabandt:
On Fr, 21 Jun 2024, Jörg Thümmler wrote:
ich will von Mailquelltexten den ganzen Serverkram entfernen, mit tr und sed mache ich aus jeder Mail eine Zeile, die mit dem üblichen "From <Absender>" beginnt und dann möchte ich mit
sed -e 's/From\ www-data@myserver\N*Beginn\ des\ Textes://g' den vorderen Teil entfernen.
Auf https://regex101.com/ kann man den regex "/From\ www-data@myserver\N*Beginn\ des\ Textes:/" prüfen, er markiert genau den Bereich, den ich möchte. Aber wenn ich das ganze im sed verwende, ersetzt sed das nicht, auch mit '/<regex>/d' kommt nix anderes raus.
Hat jemand eine Idee, wo es klemmt?
Prüfe mal deine Regex, \N dürfte sed nicht verstehen. Was soll das denn matchen?
Viele Grüße, Christian
hmm, vielleicht ist das tatsächlich falsch, \N* habe ich von der regex-Seite, soll alles außer Zeilenende matchen. Aber eigentlich habe ich immer gedacht, sed arbeitet eh zeilenweise und vorher hab ich es deshalb mit .* versucht, aber da hat es auch nicht geklappt, hat auch nichts ersetzt oder gelöscht. Hätte verstanden, wenn es zuviel - bis zum letzten Auftreten von "Beginn\ des\ Textes:" überhaupt gelöscht hätte... -- cu jth