我有两个文件,每个文件有7列,我想根据相同的列值组合这两个文件。我使用以下文件来模拟我的问题: File1和file2有一个共享列,即键。 文件1:
key1 abc
key2 def
key3 ghi
file2的:
key1 hello-world
key2 amazing-time
key3 happy-day
预期产出:
key1 abc hello-world
key2 def amazing-time
key3 ghi happy-day
这是我的awk命令:
awk -F'' 'NR==FNR {a[$1]=$2; next} ($1 in a){print $1, a[$1], $2}' file1 file2
我的逻辑是:
读取file1,将其第一列存储为数组(数组a)索引,并将其第二列存储为相应的数组值
处理file2,检查file2' s第一列是否在数组a的现有索引中,如果存在,则打印file2的第一列,file1< s秒column和file2的第二列。
不幸的是,它什么也没有返回,任何人都可以帮助我,我该怎样做才能获得我的预期输出,我的awk命令出了什么问题?
答案 0 :(得分:1)
删除您的代码应该有效的-F''
。