grep und der output

Heyho

ich hab ne liste mit vielen daten, die alle so aufgebaut sind:

Code:
k-123;alksjdlakjsdl
k-125;alksjdlakjsdl
k-125;alksjdlakjsdl

jetzt möchte ich die nummern erhalten und hab geguckt, wie ich das hinbekomme.

nen normales

Code:
grep -iE "^K.([0-9]*?);"

gibt mir eben die ganze zeile zurück.

also zb.

Code:
k-125;alksjdlakjsdl

wenn ich den parameter -o setz bekomm ich nur das pattern zurück was ich suchte... aber das ist in dem fall

Code:
^K.[0-9]*?;

und nich eben wie erwartet nur das in der klammer :/

ich möchte nun statt

Code:
K-5595;

nur

Code:
5595

zurück haben.. wie mach ich das aber sauber?

mein dirty workaround ist bisher

Code:
| grep -iEo  "^K.([0-9]*?);" | grep -iEo  "[0-9]*"

aber das kanns ja nich sein :D da kommt der perfektionist durch und wills sauber haben!
 
Zurück
Oben