Hat funktioniert, danke an alle.
Für's Protokoll: habe ein Script zum Erstellen des Files und ein zweites
Script zum Parsen gebastelt, was alles tut wie ich möchte

create.sh
#!/bin/bash
srcfile=suu-compare
compfile=component.lst
version=version
filename=files.lst
dstfile=result.lst
grep "component:" $srcfile | cut -b 12- | sed -e 's/ //g' > $compfile
grep "current version:" $srcfile | awk '{print $3"|"$7}' > $version
grep "Package name:" $srcfile | awk '{print $3}' > $filename
paste -d\| $compfile $version $filename > $dstfile

compare.sh
#!/bin/bash
compfile=result.lst
while read file; do
 cm=$(echo $file | cut -d \| -f1)
 cv=$(echo $file | cut -d\| -f2)
 rv=$(echo $file | cut -d\| -f3)
  echo "Komponente "$cm
  echo "Current Version "$cv
  echo "Repository Version "$rv
  if [ $cv = $rv ]; then
   echo "OK"
  else
   echo "needs Update"
  fi
done < $compfile




Am 28. Februar 2014 10:49 schrieb Thomas Müller <[email protected]>:

> Hallo Christian und Frank,
>
> danke für die Anregungen, ich probiers mal.
> "paste" hatte ich nicht auf dem Radar bzw. kannte es gar nicht :-)
>
>
> Am 28. Februar 2014 09:46 schrieb Frank Hasterok <
> [email protected]>:
>
> Hallo,
>>
>> hier ist mein Vorschlag:
>>
>> #!/bin/bash
>> grep "component:" test280214.txt >ausgabedatei280214.txt
>> grep "current version:" test280214.txt | paste ausgabedatei280214.txt -
>> >>ausgabedatei280214.txt
>> sed -i '1,2d' ausgabedatei280214.txt
>> sed -i 's/ \(repository version:\)/\t\1/'  ausgabedatei280214.txt
>> grep "Package name:" test280214.txt | paste ausgabedatei280214.txt -
>> >>ausgabedatei280214.txt
>> sed -i '1,2d' ausgabedatei280214.txt
>>
>> Vielleicht geht es noch einfacher. Ich bin kein Scripting Experte.
>>
>> Viele Grüße
>> Frank
>>
>> Am Donnerstag, den 27.02.2014, 21:01 +0100 schrieb Thomas Müller:
>> > Hallo an die Scripting Experten unter Euch,
>> >
>> > wie kann ich elegant bzw. überhaupt folgende Aufgabe lösen:
>> > 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
>> > >
>> >
>> > In der Ausgabe sollen die Werte für component, current version,
>> > repository version und Package name pro Komponente in jeweils einer
>> > Zeile erscheinen.
>> > Diese sollen im Idealfall Felder darstellen, die mit awk erfasst werden
>> > können ($1, $n).
>> > 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.
>> >
>> > Habe schon diverse awk und sed Konstrukte probiert, leider ohne
>> > durchschlagenden Erfolg da sich meine Kenntnisse der genannten Tools arg
>> > in Grenzen hält ;-(
>> >
>> > Wie könnte man das machen?
>> >
>> > Gruß Thomas
>> >
>> >
>> >
>> >
>> >
>> >
>> > _______________________________________________
>> > Lug-dd maillist  -  [email protected]
>> > https://ssl.schlittermann.de/mailman/listinfo/lug-dd
>>
>>
>>
>> _______________________________________________
>> Lug-dd maillist  -  [email protected]
>> https://ssl.schlittermann.de/mailman/listinfo/lug-dd
>>
>
>
>
> --
> Freundliche Grüße
>
> Thomas Müller
> Systemingenieur (IT)
> Hainstrasse 6
> 01662 Meißen
> eMail: [email protected] <[email protected]>
>  <http://www.mueller-meissen.de>
>



-- 
Freundliche Grüße

Thomas Müller
Systemingenieur (IT)
Hainstrasse 6
01662 Meißen
eMail: [email protected] <[email protected]>
<http://www.mueller-meissen.de>
_______________________________________________
Lug-dd maillist  -  [email protected]
https://ssl.schlittermann.de/mailman/listinfo/lug-dd

Antwort per Email an