ich suche eine einfache Möglichkeit mit Linux in einem Skript eine HTML-Datei zu öffnen und darin nach einem bestimmten Text suchen. Bei der Fundstelle angekommen, muss ich 9 Zeilen zurück (nach oben), wo mein Wert steht, den ich dann auslesen und im Skript weiterverwenden muss.
Habt Ihr eine Idee? Bin nicht sehr bewandert mit AWK und Bash-Skripten…
danke für Deine Antwort!
Kannst Du mir bitte den AWK-Befehl noch näher erleutern?
if(NR>9)entspricht das der Zeilennummer?
Der Inhalt in meiner „Zielzeile“ sind div. HTML-Tags und mein Wert steht zwischen 100. Wie kann ich den Substring rausbekommen? Der Wert ist maximal 3 Stellig und minimal 1-stellig (0-100%)
Kannst Du mir bitte den AWK-Befehl noch näher erleutern?
Im Array a werden die letzten 9 Zeilen gespeichert.
i zeigt auf die zueletzt gespeicherte Zeile. i wird bei jeder Zeile hochgezählt, modulo 9, % ist die Modulo/Rest-Funktion in awk. Also hat i die Werte 0, 1, 2, 3, … 8, 0, 1, 2, usw.
Wenn die gesuchte Zeile gefunden ist, dann wird der älteste Eintrag aus ausgedruckt. Auch das geht mit der Modulo-Funktion
Der Inhalt in meiner „Zielzeile“ sind div. HTML-Tags und mein
Wert steht zwischen 100. Wie kann ich den Substring
rausbekommen? Der Wert ist maximal 3 Stellig und minimal
1-stellig (0-100%)
Du kannst z.B. mit p = index($0, „muster“) nach einem Muster suchen und wenn p>0 ist mit w = substr($0, p, laenge) die gesuchten Zeichen herauskopieren.