Linux: SED: String mit zwei Pattern exportieren
Moin zusammen,
ich habe mehrere Varianten ergooglet und ausprobiert, bin aber zu blöde... Wo ist mein Fehler?
Ich möchte aus einem Website Code einen Wert fischen mit 2 Pattern. (Davor und danach)
Original-Code:
sed -n '/th class="red last">=A/,/<span%>/p' /home/pi/dateien/test/test.txt > /home/pi/autowallpaper/test/test2.txt
Mein erwartetes Ergebnis wäre:
Allerdings ist die test2.txt mit 0 Bytes leer.
Warum?
Danke für eure Hilfe vorab.
Jensen.
ich habe mehrere Varianten ergooglet und ausprobiert, bin aber zu blöde... Wo ist mein Fehler?
Ich möchte aus einem Website Code einen Wert fischen mit 2 Pattern. (Davor und danach)
Original-Code:
</th><th class="red">-0,20 <span>EUR</span></th><th class="red last">-1,27 <span>%</span></th></tr></table>
sed -n '/th class="red last">=A/,/<span%>/p' /home/pi/dateien/test/test.txt > /home/pi/autowallpaper/test/test2.txt
Mein erwartetes Ergebnis wäre:
-1,27
Allerdings ist die test2.txt mit 0 Bytes leer.
Warum?
Danke für eure Hilfe vorab.
Jensen.
Please also mark the comments that contributed to the solution of the article
Content-Key: 273948
Url: https://administrator.de/contentid/273948
Printed on: April 23, 2024 at 17:04 o'clock
5 Comments
Latest comment
Moin,
etwas kürzer geht's auch so:
Gruß jodel32
etwas kürzer geht's auch so:
sed -nre 's/.*red last">([^<]*)<.*/\1/p' /home/pi/dateien/test/test.txt >/home/pi/autowallpaper/test/test2.txt
curl -s "http://www.finanzen.net/aktien/Deutsche_Telekom-Aktie" | grep -o '<table class="header_height">.*</table>' | sed -nre 's/.*<th>([^<]*)<.*red">([^<]*)<.*red last">([^<]*).*/Kurs:\1 Veränderung:\2 Prozentual:\3/p'
Kurs:15,15 Veränderung:-0,26 Prozentual:-1,69