Hi Thomas,
On Thu, Feb 27, 2014 at 21:01:51 +0100, Thomas Müller wrote:
Gegeben ist eine Datei mit folgendem Inhalt (Auszug)
[...]
component: NetXtreme BCM5719 Gigabit Ethernet PCIe rev 01 (eth7) component type: Firmware current version: 7.8.16 = repository version: 7.8.16 Package name: Network_Firmware_T3TVN_LN_7.8.16.BIN Applicability: Package cannot be applied
component: iDRAC7 component type: Firmware current version: 1.51.51 > repository version: 1.46.45 Package name: ESM_Firmware_JYX4C_LN32_1.46.45_A00.BIN Applicability: Package can be applied
[...]
Hintergrund: Es soll ein Soll-Ist Vergleich der installierten Firmware eines DELL Servers mit einem Firmware Repository durchgeführt werden mit der Angabe: Komponente A braucht ein Update auf Version x, Komponente B ist aktuell.
Dummer Ansatz mit grep und zwei Zeilen Kontext um das gefundene Muster:
grep -C 2 "^current version:.*[0-9] =" all.txt > uptodate.txt
grep -C 2 "^current version:.*[0-9] >" all.txt > needsupdate.txt
Die Ausgabe ist zwar nicht einzeilig pro Datensatz, filtert aber zwei Listen heraus.
Gruss, Chris