Linux bash:将两个带有不同标头的csv文件组合在一起

时间:2013-03-25 14:54:47

标签: linux bash csv

我有这两个文件

首先:

a;b;c;d
1;2;3;4

第二

d;e;f;g
4;5;6;7

我需要这个结果:

a;b;c;d;e;f;g
1;2;3;4;;;
;;;4;5;6;7

在Linux中有什么简短的方法吗?

编辑:每个csv文件的标题/列可以更改,并且可以包含重复的列。

编辑2:Hmpf。链接的问题是完全不同的情况,并没有回答我的问题。

1 个答案:

答案 0 :(得分:2)

您可以加入标题列,然后调整剩余的行

head1=`head -1 file1.txt`
head2=`head -1 file2.txt`
echo "$head1;$head2"
sed -e 1d -e 's/$/;;;/' file1.txt
sed -e 1d -e 's/^/;;;/' file2.txt