Wortvergleich zwischen zwei Textdateien

G

garga

Hallo zusammen

Hmm, leider hab ich wieder ein kleines Problem: Ich besitze zwei Textdateien. In diesen sind unterschiedliche Wörter, jeweils eine Kolonne. Jetzt möchte ich die erste Datei mit der zweiten vergleichen. Wieviele Wörter der ersten Datei kommen in der zweiten vor?

grep -c dateieins.txt dateizwei.txt

Was mach ich falsch?

Vielen Dank,
Marc
 
hmm sieht nach ner hausaufgabe aus.

versuchs mal mit

grep -c datei1txt; grep -c datei2txt

was liefert das für eine ausgabe danach musst du mal überlegen.

gruß tuxlover
 
Zuletzt bearbeitet:
garga schrieb:
grep -c dateieins.txt dateizwei.txt
Dies sucht nach dem string 'dateieins.txt' in dateizwei.txt. Richtiger waere:
Code:
for i in `cat dateieins.txt` ; do grep -c $i dateizwei.txt ; done
Das gibt Dir fuer jedes Wort in dateieins.txt die Anzahl (einschl. 0) der Vorkommnisse in dateizwei.txt an. Wenn Du die anzahl der vorkommenden Woerter zaehlen willst, gibt Du das ganze an awk weiter:
Code:
for i in `cat dateieins.txt` ; do grep -c $i dateizwei.txt ; done | awk '{ if ($1> 0) ++count } END{ print count}'
@tuxlover:
Hast Du Dein Beispiel ausprobiert? Das wartet doch nur zweimal auf Eingaben von der Standardeingabe.
 
rikola schrieb:
Hast Du Dein Beispiel ausprobiert? Das wartet doch nur zweimal auf Eingaben von der Standardeingabe.

ja das weiß ich. ich hatte gedacht dass man irgendwie mit pipes oder eingabe- und ausgabeumlenkungen arbeiten kann. deshalb ja auch danach musst du mal weiter sehen.

offensichtlich habe ich mich geirrt.
sorry
 
vielleicht hilft dir der befehl diff...der listet den unterschied zweier dateien auf...
 
Hallo

Was meinst du mit Kolonne?
Wenn du pro Zeile ein Wort hast, geht es relativ einfach:
grep -f datei1 datei2|wc -l

Gib mal ein paar Beispielzeilen der Daten.
Gegebenenfalls, lassen sich durch ein festes Trennzeichen getrennte Wörter in einer Zeile mittels tr durch \n ersetzen und dies als Eingabe für grep (mis)brauchen. dann muss natürlich datei1 noch mittels sort|uniq normalisiert werden.
;)

Das nur so als Denkanstoß zum Selberbasteln.

Gruß Wolfgang
 

Ähnliche Themen

Verzeichnis mit 1200 Dateien auf Verweise in Textdateien checken

Script pausieren bis Bedingung erfüllt ist

Textdatei filtern und löschen mit grep /sed

Keine grafische Oberfläche (Debian Installation)

Welches Linux/Unix für ehemaligen OSX Nutzer?

Zurück
Oben