我有2个这样的csv文件:
name;num;value1
name1;1;1
name1;2;10
name2;1;5
和
name;num;value2
name1;2;8
name2;2;6
name1;1;7
我想像这样合并这2个CSV
name;num;value1;value2
name1;1;1;7
name1;2;10;8
name2;1;5;6
2 csv具有名称和num但不是相同的顺序。我如何以正确的顺序在fisrt文件中添加value2列?
答案 0 :(得分:0)
你可以使用这个awk:
awk 'BEGIN{FS=OFS=";"} FNR==NR{a[$1,$2]=b[$1]=$NF;next}
{print $0, (a[$1,$2])?a[$1,$2]:b[$1]}' file2 file1
name;num;value1;value2
name1;1;1;7
name1;2;10;8
name2;1;5;6