使用awk组合两个文件,我的命令不起作用

时间:2014-06-02 22:26:46

标签: csv awk

我有两个文件,每个文件有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

我的逻辑是:

  1. 读取file1,将其第一列存储为数组(数组a)索引,并将其第二列存储为相应的数组值

  2. 处理file2,检查file2' s第一列是否在数组a的现有索引中,如果存在,则打印file2的第一列,file1< s秒column和file2的第二列。

  3. 不幸的是,它什么也没有返回,任何人都可以帮助我,我该怎样做才能获得我的预期输出,我的awk命令出了什么问题?

1 个答案:

答案 0 :(得分:1)

删除您的代码应该有效的-F''