Hallo, Am Tue, 29 Aug 2017, K. Elo schrieb:
Danke vielmals für die schnellen Antworten sowie David für die zusätzliche Information.
Ich hätte noch eine Zusatzfrage: ich habe festgestellt, in einigen Zeilen gibt es zwei rot markierte Werte. Wie kann ich jetzt diese so herausfiltern, dass diese auf einer Zeile gezeigt werden? Die Grep- Variante fügt für jeden gefundenen Wert eine neue Zeile ein.
Also die Zeile:
Bla bla <Roter Wert1> Bla Bla <Roter Wert2>
soll:
<Roter Wert1> <Roter Wert2>
produzieren.
Ist das mit 'awk' möglich?
Denke schon. Aber um ganz sicher zu sein, zeig doch mal ein konkretes und komplettes Beispiel (wobei du die reinen _Text_-Inhalte in "Bla*" und "Roter Wert" natürlich zensieren kannst und solltest, aber so, das die Struktur (IP/Text) erhalten bleibt). Also eine komplette Beispielzeile inkl. der Escapes wenn's geht. Minimaler pseudo-awk-code Ansatz aus der Hüfte: ==== /\e\[31(;[0-9;]*)?m/ { gensub|gsub|sub ... print ... } ==== Die Bedingung sollte bei jeder Zeile mit mind. einem "Rot" anspringen oder so, und dann kann man nach Herzenslust basteln ;) Die Regex ist jetzt aber nur hingeschrieben und noch nichtmal gegen meine 2 einfachen Beispiele getestet. Hmpf. Ist awk bei sowas "greedy" und kennt's ggfs. einen "non-greedy" Modifier? Öhm, evtl. kann awk das doch nicht, aber perl (mit python kenn ich mich nicht aus). Und perl (ohne weitere Module) startet durchaus flott (hier z.B. in <0.1s mit "strict"), und da wird schonmal "strict.pm" gesucht und geladen... Wenn man (gar in ner Schleife) perl (und awk und sed!) mehrfach für ein "Dings" aufruft macht man aber immer was flasch[tm], da reicht es _einmal_ perl, awk, sed aufzurufen. Wobei, Schleifen in sed sind nicht gerade intuitiv... HTH, -dnh PS: Tip am Rande: 'find ... perl' ist immer ne doofe Idee, v.a. wenn das perl was nicht triviales macht, bei dem jedoch nicht die Ausführung die Laufzeit bestimmt[2]. "Find" kann perl selber auch, wenn auch anders, aber zur Übersetzung gibt's "find2perl", das man dann noch verfeinern kann... [2] geht's z.B. um Videos rekodieren, dann geht der Anteil von find+perl trotz aller Ineffizienz gegen Null, je nach Größe der Videos ;) -- Demokratie ist die Herrschaft der Unfähigen über die Desinteressierten... -- gewissermaßen aus Dorfer's Donnerstalk -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org