连接两个CSV文件,

问题描述:

我需要合并的“契约”列这两个排序的CSV文件(这是很常见的两个文件):连接两个CSV文件,

file1.csv

数据;客户端;合同

2017年3月4日; LA00024; 1-456

2017年3月4日; LA00025; 1-789

file2.csv

合同; PDA

1-456; 00024

1-789; 00025

我想获得的输出它是一个独特的表:

data; client; contract; PdA

2017年3月4日; LA00024; 1-456; 00024

2017年3月4日; LA00025; 1-789; 00025

但是使用命令

$加入-o 1.1 1.2 1.3 2.2 -t“;” -1 3 -2 1 file1.csv file2.csv

结果我得到的只是一个线

$数据;客户端;合同; PDA

的加入没有按”除了输入文件标题的合并之外,什么都不返回? 它为什么会这样?

join之前排序文件。

join -o 1.1,1.2,1.3,2.2 -t ';' -1 3 -2 1 <(sort -n -t";" -k3 file1.csv) <(sort -n -t";" -k1 file2.csv) 

PS:对于样本数据,有问题的命令为我工作。要求,-o FORMAT