Hallo Forumser,
ich hab schon ein etwas länger schwelendes Problem mit einer grep-Abfrage, welches ich bis jetzt erfolgreich verdrängt habe nun aber doch ein für alle Male mit eurer Hilfe lösen möchte.
Ich möchte in einer Textdatei das Vorhandensein einer Zeichenkette mit Bindestrich abfragen also z.B. siehe Titel oder aber "weiss-gar-nix".
Welche Sonderzeichen o.ä. muss ich da in meine Abfrage einfügen?
grep "foo-bar" /path/to/textfile
??
Okay, ein bisschen blöd gefragt, denn in der Datei kommt vor foo-bar bspw. auch foo oder oo vor und genau das will ich ja nicht finden.
Ich hab das mal mit http://www.zytrax.com/tech/web/regex.htm probiert (Test in der Mitte der Seite), aber nicht hinbekommen.
Gib am besten mal ein Beispiel mit 4 Zeilen, von denen ein oder zwei matchen und andere nicht matchen soll, obwohl sie foo-bar drinstehen haben. So habe ich das noch nicht verstanden, was Du willst? Steht das gesuchte Wort immer am Zeilenanfang? Dann könntest Du mit "^foo-bar" weiterkommen.
Die Frage ist der Aufbau der Datei.
Wenn Du nach foo-bar grepst, und das in einer Zeile steht, wo auch foo oder oo drin ist, dann wird Dir latürnich die ganze Zeile ausgegeben, weil grep ja Zeilen ausgibt.
~
towo:Defiant> cat dateien.txt
towo
foo
bar
foo-bar
Müller-Lüdenscheid
Müller Lüdenscheid
oo
foo
~
towo:Defiant> grep "foo-bar" dateien.txt
foo-bar
Was genau möchtest Du denn finden? Alle Vorkommen von "-"? Alle Vorkommen von string-string? Alle Vorkommen von genauerstring-genauerstring?
Hi Steve,
jo, ich möchte genauerstring-genauerstring erkennen.
Wenn also in der ersten Zeile "Müller" steht und in der zweiten Zeile "Müller-Lüdenscheit" soll er nur Letzteres erkennen. Dabei soll es egal sein, wo in der Zeile das dann steht.
Dann hat towo doch schon die richtige Lösung genannt:
grep "genauerstring-genauerstring" $dateinameOder passt das noch nicht? Wenn ja, warum nicht?
Jo, es ist schon merkwürdig, vielleicht liegt es auch an etwas anderem. Es handelt sich um ein von vdr aufgerufenes postrecording script, welches in Abhängigkeit vom Inhalt der vdr.info bestimmte Aktionen durchführt. Komischerweise funktioniert die Abfrage für "heute-journal" nicht, für alle anderen Sendungen schon. Ich muss mir nochmal eine Möglichkeit zum Debugging überlegen.
Wenn in der ersten Zeile Fischer steht,
in der zweiten Müller-Lüdenscheidt
Dann ist das nicht, was du erkennen willst, da muss vorher Müller oder Lüdenscheidt sein?
Geht es um Heiraten oder Scheidungsstatistiken?
Nö, um Nachrichtensendungen
HEUREKA, ich habs gefunden ...
Beim Kopieren / Einfügen ist mir einfach ein . (Punkt) in die Befehlszeile gerutscht - und dann wurde die Datei nicht kopiert - und ich habe dies auf Grund der kleinen Terminalschriftart und vermutlich partiellem Aufmerksamkeitsdefizit-Syndroms nicht gesehen. Nun ja ... siehe Signatur