FHEM Forum

Verschiedenes => Off-Topic => Thema gestartet von: ThomasMagnum am 28 Oktober 2018, 15:09:40

Titel: Linux "grep" Befehl verstehen (Suchmuster)
Beitrag von: ThomasMagnum am 28 Oktober 2018, 15:09:40
Hallo zusammen,

aktuell möchte ich Linux besser verstehen und arbeite ein paar Aufgaben durch. Zu durchsuchen ist dabei unter Anderem eine Datei die je Reihe zu Begin eine Bezeichnung hat die mit einem ":" endet. Innehalb dieser Bezeichnung soll geprüft werden ob Ziffern von 0-9 vorkommen, egal an welcher Stelle.

Wenn ich nun per grep '*[:DIGIT:]*:' suche finde ich nichts, obwohl in der Datei drei Zeilen mit einem entsprechenden Muster zu finden sind.

Mein Suchmuster soll beliebig anfangen "*", dann eine Ziffer aufweisen "[:DIGIT:]", beliebig weitergehen "*" und mit einem ":" enden.
Kann mir hier jamand eine kleine Hilfe geben oder aufzeigen wo mein Fehler liegt.

Die vielen Hilfeseiten im Internet haben mich mehr verwirrt anstatt Klarheit geschaffen.

Vielen Dank vorab.

Gruß, Thomas
Titel: Antw:Linux "grep" Befehl verstehen (Suchmuster)
Beitrag von: CoolTux am 28 Oktober 2018, 15:35:06
reicht dir das so


grep "[0-9].*:$" test.txt
Titel: Antw:Linux "grep" Befehl verstehen (Suchmuster)
Beitrag von: zap am 29 Oktober 2018, 11:53:40
oder vielleicht

grep "\d+" test.txt

wie so oft bei regulären Ausdrücken gibt es viele Wege , die zum Ziel führen.

Ich empfehle das Buch "mastering regular expressions", quasi das Standardwerk.