Datei durchsuchen und jeweils die 2. vorrige Zeile ausgeben

A

anti00Zero

Hallo.

Ich bin sehr neu dem Programmieren mit Shell Skript unter Linux.

Mein Problem ist folgendes:

Ich habe eine Datei die Automatisch erzeugt wird. Es stehen ab und zu Zeilen mit einem bestimmten Inhalt drin. Nun will ich nicht diese Zeile sondern die -2. Zeile (also die vorvorige Zeile) der Datei ausgeben oder in eine Datei umleiten.

z.b. test.txt.out soll durchsucht werden nach dem text TESTTEXT und die vorvorige Zeile mit dem text ICHWILLDICH, soll ausgegeben oder in einen neue Datei umgeleitet werden.

Das Durchsuchen und finden der Zeilennummer kann ich ja schon. Aber beim letzten Schritt komme ich nedd weiter.

ps: das Umleiten in einen Datei kann ich auch schon :D


Danke für eure Hilfe.


Sorry falsches Unterforum. :(
 
Hi.

Das kannst du z.B. mit AWK machen. (oder Perl oder Python...)

Bsp:
Bash:
awk 'BEGIN { getline lm2; getline lm1 } { if (/TESTTEXT/) print lm2; lm2 = lm1; lm1 = $0; }' datei.txt
Gruß
 
deepthroat hat gesagt.:
Hi.

Das kannst du z.B. mit AWK machen. (oder Perl oder Python...)

Bsp:
Bash:
awk 'BEGIN { getline lm2; getline lm1 } { if (/TESTTEXT/) print lm2; lm2 = lm1; lm1 = $0; }' datei.txt
Gruß

Danke für die Antwort. Ich werde es morgen gleich mal testen. :)
 
Vielen Dank.

Es hatte alles super gefunzt.

:) :) :) :)

Ich hatte es gestern auch noch fast selbständig hinbekommen. aber nun ist es vollständig.
 
Zurück