我有两个文本(频率计数 dic),我想通过在第二个文件中仅添加相同的单词来增加第一个文件的频率计数。
例如我的文件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
第二个文件中第一个文件中未存在的单词将被删除。
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