Ich habe zwei Textdateien, die ich irgendwie kombinieren möchte, aber basierend auf dem zweiten Feld in der ersten Datei ersetzen. Unten ist das Format der ersten Datei. Welches sind Wörter mit ihrer Zählung aus einem Korpus.Kombinieren von zwei Textdateien basierend auf dem zweiten Feld in der ersten Textdatei nur wenn auch in der zweiten Textdatei
file_1.txt
1000 the
999 been
950 phone
850 ball
800 watch
799 porch
Datei 2 ist, einige der Worte, die in der ersten Datei gefunden werden können, sondern einen Zusammenbruch des Wortes aus dem zweiten Feld auf.
file_2.txt
the th e
been be en
shirt sh ir t
phone pho ne
desk d esk
chair cha i r
watch wa t c h
floor f loo r
Was ich unter möchte bekommen. Wenn das Wort/die Wörter in beiden Dateien vorhanden sind, möchte ich nur das Wort von der zweiten Datei abbrechen.
file_3.txt
1000 th e
999 be en
950 pho ne
850 ball
800 wa t c h
799 porch
Ich habe einige sort
Sachen zwischen den beiden Dateien auf den Feldern, aber ich bin ziemlich verloren Basis zu tun versucht.
Mit 'join',' sort', 'sed',' awk' mit und 'bash':' join -t _ -1 2 -2 1 -a 1 <(sed 's// _ /' file_1.txt | sort -t _ -k 2,2) <(sed 's// _ /' datei_2.txt | sort -t _ -k 1,1) -o 1,1,1,2,2,2 | sed 's/_ $ //' | awk -F {'print $ 1, $ NF}' | sortieren -nr – Cyrus