2017-07-25 1 views
-1

Ich weiß in der Datei A, hat eine Zeichenfolge, die dc034 enthält, aber ich kann nicht mit grep Befehl entweder mit dem Wort zählen oder indem Sie nach der Zeichenfolge suchen. Was mache ich falsch? VorschlägeIch muss nach einer nicht genauen Übereinstimmung auf Unix suchen und ich kann es nicht mit grep tun

grep "dc034" filedirectoryA | wc 
    0  0  0 

grep -Fv "dc034" filedirectoryA 
+0

Kann nicht wirklich erraten. Von dem, was Sie eingegeben haben, sieht es so aus, als hätte die Datei die fragliche Zeichenfolge nicht. Vielleicht ist die Zeichenfolge nicht wirklich vorhanden, aber es ist ein nicht-ASCII-Zeichen, das den eingegebenen Zeichen ähnelt. Was ist die Datei? –

+0

verwandt: 1. [für Dateien] (https://stackoverflow.com/questions/9439121/fuzzy-file-search-in-linux-console?s=1|2.1501) 2. [Zeichenketten in Datei] (https: //stackoverflow.com/questions/30355972/fuzzy-string-matching-with-grep?noredirect=1&lq=1) –

+0

Beispieldaten anzeigen – hek2mgl

Antwort

0

Sie können nicht für nicht-exakte Übereinstimmung mit grep suchen.

Das Einzige, was Sie tun können, ist die Suche case-insensitiv:

grep -i "dc034" filedirectoryA 

Oder versuchen Sie, auf Unix-Fuzzy-Suche zu tun? agrep existiert in einigen Distributionen. sieht wie eine wiederbelebte Open-Source-Version aus. Könnte auch helfen.

Wenn das nicht funktioniert, sehen Sie, ob Sie tre-agrep für Ihre Distribution finden können.

Hoffe das hilft;

+1

Debian und Ubuntu haben immer noch Agrep in ihren Repositories, Gentoo – hek2mgl

0

Sie können einen Stern (*) vor und nach der Zeichenfolge eingeben und versuchen zu suchen.

Verwandte Themen