我正在使用 ubuntu,我们得到了一个包含 2 列的 csv file1.csv
a,1
b,1
...
另一个 file2.csv 有 2 列看起来像
a,24324
b,432
第一列相同,并在 file1.csv 和 file2.csv 中排序。 如何在 Ubuntu 中使用 awk 添加 2 个 csv 文件的第二行的值以获得如下结果:
a,24325
b,433
最佳答案
您可以使用以下 awk
:
awk -F, -v OFS=, 'NR==FNR{a[$1]=$2;next}{$2+=a[$1]}1' file1.csv file2.csv
a,24325
b,433
我们将输入输出字段分隔符设置为,
。使用 NR==FNR
构造,我们将 file1.csv 加载到数组 a
中。 next
允许我们处理第一个文件。一旦文件加载到内存中,我们就转到第二个文件,并将数组中的值添加到第二列。
这会将输出打印到 STDOUT。您可以将输出重定向到另一个文件。
关于linux - 如何在 Ubuntu 中使用 awk 添加 2 个 csv 文件的第二行的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25558655/