Zeile nach Begriff parsen

Post Reply
Message
Author
Speed78

Zeile nach Begriff parsen

#1 Post by Speed78 »

Hi,

ich habe Dateien indem ich folgendes zurückbekomme:

---------
L0219037.log:L 02/19/2006 - 15:21:30: [MANI_ADMIN_PLUGIN] Admin [Schnueffer] [STEAM_0:1:121212] Executed : Banned (By Admin) [$wizZ] [STEAM_0:0:0123456] banid 5 3495 kick
---------

Ich möchte diese Zeile jetzt mit der Shell parsen und dabei nur folgendes zurück bekommen:

STEAM_0:0:0123456

Die Zeichenkette ändert sich zwar vom Inhalt ständig, aber die Zeile ist immer nach diesem Format aufgebaut.

Ich habe es schon mit cut versucht, weiß aber nicht wie ich von rechts nach links mich durch arbeite. Ich bräuchte also etwas das so aussieht

grep "Banned (By Admin" * | cut -d " " -f-

Banned (By AdminBanned (By AdminIch möchte es jetzt erreichen das ich die letzte Spalte die mit "STEAM" anfängt zurück bekomme. Ich habe es schon in etwa so probiert:

grep "Banned (By Admin)" * | cut -d "[" -f-1

Aber mit "-f-1" funzt es nicht. Kann mir da einer weiter helfen?

Gruß Rainer

Speed78

Nochmal

#2 Post by Speed78 »

Hi,

in der Aufgabenstellung ist irgendwie alter Text reingekommen :(. Hier nochmal das ganze vernünftig:

--------------------------------------------------------------------------------

Hi,

ich habe Dateien indem ich folgendes zurückbekomme:

---------
L0219037.log:L 02/19/2006 - 15:21:30: [MANI_ADMIN_PLUGIN] Admin [Schnueffer] [STEAM_0:1:121212] Executed : Banned (By Admin) [$wizZ] [STEAM_0:0:0123456] banid 5 3495 kick
---------

Ich möchte diese Zeile jetzt mit der Shell parsen und dabei nur folgendes zurück bekommen:

STEAM_0:0:0123456

Die Zeichenkette ändert sich zwar vom Inhalt ständig, aber die Zeile ist immer nach diesem Format aufgebaut. Wichtig ist dabei das von rechts nach links geparst wird.

Ich habe es schon mit cut versucht, weiß aber nicht wie ich von rechts nach links mich durchparse. Ich bräuchte also etwas das so aussieht

grep "Banned (By Admin)" * | cut -d "[" -f-1

Aber mit "-f-1" funzt es nicht. Kann mir da einer weiter helfen?

Gruß Rainer

User avatar
jochen
prolinux-forum-admin
Posts: 699
Joined: 14. Jan 2000 15:37
Location: Jülich
Contact:

#3 Post by jochen »

Nur kurz & hektisch:

Code: Select all

awk '/Banned \(By Admin\)/ { print $(NF - 5)}' eingabedatei
Erklärungen oder Anpassungen später.

Jochen
Die grösste Lüge der EDV? "Mal eben..."

Post Reply