あるファイルの既存の単語だけを追加し、残りは別のファイル(Unix)から削除しますか?

あるファイルの既存の単語だけを追加し、残りは別のファイル(Unix)から削除しますか?

2つのテキスト(頻度数dic)があり、2番目のファイルに同じ単語のみを追加して、最初のファイルの頻度数を増やしたいと思います。

たとえば、私のファイル1

100  man 
522  women  
600  kids 
600  football 

私のファイル2

100 man 
300 women 
600 kids 
900 football
500 fifa 
500 world 

この出力が欲しい

200 man
822 women 
1200 kids
1500 football 

最初のファイルにない2番目のファイルの単語は削除されます。

500 fifa  # removed 
500 world # removed  

sed / catを使用してcmdを追加してみましたが、目的の結果が得られませんでした。

ベストアンサー1

これはawkメソッドです。

$ awk 'NR==FNR{a[$2]=$1; next}($2 in a){print $1+a[$2],$2}' file1 file2
200 man
822 women
1200 kids
1500 football

file1には表示されますが、にはない単語も含めるには、file2次を使用します。

awk 'NR==FNR{a[$2]=$1; next}{print $1+a[$2],$2}' file2 file1 

おすすめ記事