[solved] grep kann die Zeichenfolge "-.-" nicht matchen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
ingo2
Beiträge: 1124
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

[solved] grep kann die Zeichenfolge "-.-" nicht matchen

Beitrag von ingo2 » 06.04.2020 18:14:46

Habe hier z.B. eine kleine Testdatei mit folgenden Zeilen (Datum / Zeit / Temperatur):

Code: Alles auswählen

2020-04-04	01:30	 9.4
2020-04-04	01:46	 9.3
2020-04-04	02:01	 9.2
2020-04-04	02:17	 -.-
2020-04-04	02:32	 -.-
und möchte darin die Zeilen finden, die die Zeichenfolge '-.-' enthalten.
Habe schon alle möglichen Varianten mit und ohne Option "-E" und auch Escape-Zeichen für "." und/oder "-" probiert, Debiangrep spuckt nur "Ungültige Option ... " aus. Mit Debiansed dagegen geht es so völlig problemlos, sogar auf Vorkommen an Zeilenende gefiltert:

Code: Alles auswählen

sed -n '/-\.-$/p'
Eigentlich sollte Debiangrep doch auch problemlos mit RegExp umgehen können - oder?

Wo steckt der (Gedanken-)Fehler?
Zuletzt geändert von ingo2 am 06.04.2020 18:56:05, insgesamt 1-mal geändert.

tobo
Beiträge: 1990
Registriert: 10.12.2008 10:51:41

Re: Buster: grep kann die Zeichenfolge "-.-" nicht matchen

Beitrag von tobo » 06.04.2020 18:37:31

Ja, da grep dafür erschaffen wurde, sollte es auch mit RegEx umgehen können. Unabhängig von Buster - schau dir mal in der Manpage von grep den Paramter -e an. Der führende - genießt eine Sonderbedeutung. Also entweder mit -e oder mit "\-\.-".

Benutzeravatar
ingo2
Beiträge: 1124
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: Buster: grep kann die Zeichenfolge "-.-" nicht matchen

Beitrag von ingo2 » 06.04.2020 18:55:32

tobo hat geschrieben: ↑ zum Beitrag ↑
06.04.2020 18:37:31
- schau dir mal in der Manpage von grep den Paramter -e an. Der führende - genießt eine Sonderbedeutung.
Au Ha, das soll man auswendig wissen - bin froh, daß ich inzwischen RegExp und sed einigermaßen verstehe.
Danke, Ingo

Antworten