Wie finde ich Wörter aus einer Datei in einer anderen Datei?

8

In einer Textdatei habe ich 150 Wörter. Ich habe eine andere Textdatei, die ungefähr 100.000 Zeilen hat.

Wie kann ich für jedes Wort, das zur ersten Datei gehört, prüfen, ob es in der zweiten Datei ist oder nicht?

Ich habe über grep nachgedacht, aber ich konnte nicht herausfinden, wie man es benutzt, um jedes der Wörter im Originaltext zu lesen.

Gibt es eine Möglichkeit, dies mit awk zu tun? Oder eine andere Lösung?

Ich habe versucht mit diesem Shell-Skript, aber es entspricht fast jeder Zeile:

%Vor%

Ein anderer Weg, den ich gefunden habe, ist:

%Vor%     
ocslegna 22.01.2014, 15:41
quelle

2 Antworten

5

Sie können verwenden fgrep -f :

%Vor%

ODER um ganze Wörter zu finden:

%Vor%

UPDATE: Wie in den Kommentaren:

%Vor%     
anubhava 22.01.2014, 15:46
quelle
2

Verwenden Sie grep wie folgt:

%Vor%

ZWEITE OPTION

Danke an Ed Morton für den Hinweis, dass die Wörter in der Datei "reserved" als Muster behandelt werden. Wenn das ein Problem ist - das mag sein oder auch nicht -, kann das OP vielleicht so etwas verwenden, das keine Muster verwendet:

Datei "reserviert"

%Vor%

und Datei "text"

%Vor%

Awk-Skript ist wie folgt:

%Vor%

mit Ausgabe:

%Vor%

DRITTE OPTION

Alternativ kann es einfach, aber langsamer in bash gemacht werden:

%Vor%     
Mark Setchell 22.01.2014 15:47
quelle