将文件中的重复数据与第二个文件中的第二列进行匹配

托马斯·潘恩

您好,我有一个包含重复数据的文件,例如:

ENGLAND
ENGLAND
ENGLAND
JAPAN
JAPAN
JAPAN
JAPAN
AMERICA
AMERICA
AMERICA

第二个文件具有唯一数据,该文件具有两列(以“ =”分隔),第一列被视为键:

ENGLAND=LONDON
JAPAN=TOKYO
AMERICA=WASHINGTON DC
AUSTRALIA=SYDNEY
IRELAND=DUBLIN

我试图弄清楚如何使用第一列作为匹配键来输出第二个文件的第二列。输出应为:

LONDON
LONDON
LONDON
TOKYO
TOKYO
TOKYO
TOKYO
WASHINGTON DC
WASHINGTON DC
WASHINGTON DC

我尝试使用第一个文件作为bash中的数组,并尝试使用第二个文件中的cat通过管道将其作为搜索功能输入到grep中。输出不等于数组的多个实例。我认为awk有一种使用数组的方法,但是最近几天我一直无法弄清楚。

赛勒斯

与sed:

sed -f <(sed 's|\(.*\)=\(.*\)|s/\1/\2/|' file2) file1

输出:

LONDON 
LONDON 
LONDON
东京
TOKYO
东京
TOKYO
华盛顿特区
华盛顿特区
华盛顿特区

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将2个文件与包含文件1中的数据子集的第二个文件进行比较

比较两个文件并从第二个文件中获取匹配的行

将数据框中的列与R中第二个数据框中的重复值合并

比较两个文件的第一列和第二列,如果匹配则打印第二个文件中的行

从第二个文件中获取更改行

如何根据第二个文件中的信息删除文件中的某些列?

将文本文件中的列表与第二个大文本文件进行比较,然后打印匹配项。

显示文本文件中重复行的第二个结果

使用重复的第二个标题多次转换 DB 中的 *.csv 文件

使用R中的匹配将列的子集乘以第二个数据帧中的值

考虑到第二个文件中的数据,读取并替换文件

根据第二个数据框中的匹配键将列表追加到Spark数据框列

sed:如何删除文件中的第二个匹配项

列出与第二个文件中的关键字不匹配的全行

将第二行的第二个字段附加到文件中的第一行

当 A 列中的值遇到 R 中的第二个数据文件时,提取 B 列的值

根据第二个数据框中的部分匹配创建新列

一列中存在的匹配模式应替换为第二个文件的条目

比较第一个文件的第一列和第二个文件的第二列并进行匹配

以第二个字符开头对Unix中的文件夹进行排序

将第二个json文件中的数据推入索引并将其索引到dataTable中

删除与Shell脚本中第二个文件中的前2个字段匹配的文件中的行

将第一个文件的第一和第二列与第二个文件的第一列匹配

bash - 将一个文件的两列与第二个文件的一列进行比较并打印匹配项

如何将第二个单词添加为文件中每行的编号?

AWK比较两个文件,如果匹配,则将第二个文件中的新列添加到第一个文件中

在git BASH中合并第二个CSV文件列

在一个文件中替换文本并在第二个文件中匹配

R将列乘以第二个数据帧中的值