PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Erste Zahl in jeder Zeile extrahieren



caro23
16-10-2008, 17:09
Hallo zusammen,

ich bin mit der folgenden Aufgabe etwas überfordert, da mir leider die bash und regex Kenntnisse etwas fehlen. Vielleicht könnt ihr mir etwas weiterhelfen.

Ich benutze folgenden Befehl in der Shell:

vmware-vim-cmd -H 127.0.0.1 -O $port -U $user -P $pass vmsvc/getallvmsDieser erzeugt eine Liste mit Virtual Machines:



Vmid Name File Guest OS Version Annotation
128 Fedora 9 [standard] Fedora 9/Fedora 9.vmx other26xLinuxGuest vmx-07
144 SUSE 11.0 [standard] SUSE 11.0/SUSE 11.0.vmx suseGuest vmx-07 Multibrowser Appliance
32 MultiBrowser Appliance [standard] Multibrowser Appliance/mbappliance.vmx other24xLinuxGuest vmx-07 Appliance zum Testen von Webanwednungen in verschiedenen Browsern
48 SUSE Linux 10.3 [standard] SUSE Linux 10.3/SUSE Linux.vmx suseGuest vmx-07


Ich möchte nun folgendes tun:
1. Die erste Zeile rausschmeissen
2. Bei allen anderen Zeilen die Vmid extrahieren, d.h. die erste Zahl in jeder Zeile.

Ich habe nun schon einige Versuche mit grep und sed gestartet, jedes Mal bekomme ich nur immer die ganzen Zeilen zurück.

Könnt Ihr mir helfen?

Danke im voraus!
Caro

jan61
16-10-2008, 20:05
Moin,

das Rausfummeln der 1. Zeile kannst Du Dir sparen, wenn Du am Beginn nach Ziffern matchst, dann fällt die Überschrift von allein weg:


vmware ... | sed -rn '/^[0-9]+/s/([0-9]+).*/\1/p'

Jan