如何使用 Linux 按列合并两个 CSV 文件?

xia*_*fyj 6 linux csv shell

我正在寻找一行简单的代码(如果可能)来简单地按列合并两个文件并将最终结果保存到一个新文件中。

编辑以回应第一个答案@heitor:

通过使用paste file1.csv file2.csv,发生的事情是:

以文件1为例:

A B
1 2
Run Code Online (Sandbox Code Playgroud)

文件2:

C D
3 4
Run Code Online (Sandbox Code Playgroud)

通过这样做paste -d , file1.csv file2.csv >output.csv我得到了

 A B
 C D
 1 2
 3 4
Run Code Online (Sandbox Code Playgroud)

不是

A B C D
1 2 3 4
Run Code Online (Sandbox Code Playgroud)

通过这样做cat file1.csv file2.csv我得到了

A B 
1 2
C D
3 4
Run Code Online (Sandbox Code Playgroud)

他们都不是我想要的。任何想法?

任何想法?

小智 7

用于paste -d ,合并两个文件并将>命令输出重定向到另一个文件:

$ paste -d , file1.csv file2.csv > output.csv
Run Code Online (Sandbox Code Playgroud)

例如:

$ cat file1.csv
A,B

$ cat file2.csv
C,D

$ paste -d , file1.csv file2.csv > output.csv

$ cat output.csv
A,B,C,D

Run Code Online (Sandbox Code Playgroud)

-d ,告诉 Paste 用作,连接列的分隔符。

>告诉 shell 将粘贴命令的输出写入文件output.csv