如何使用shell脚本加入2个csv文件?

ton*_*ang 5 linux bash scripting

我正在尝试制作一个 shell 脚本,它将按以下方式组合两个 csv 文件:

我有两个 csv 文件,f1.csv 和 f2.csv。f1.csv 的格式为:

startId, endId, roomNum
Run Code Online (Sandbox Code Playgroud)

f2.csv 的格式如下:

startId, endId, teacherId 
Run Code Online (Sandbox Code Playgroud)

我想将这两者合并为一个具有以下格式的 csv 文件:

startId, endId, roomNum, teacherId. 
Run Code Online (Sandbox Code Playgroud)

使用在 Linux 下运行的 shell 脚本完成此任务的最佳方法是什么?

mat*_*hew 0

awk -F"," '{print $1","$2","$3",9999"}' f1.csv > newFile;
awk -F"," '{print $1","$2",9999,"$3}' f2.csv >> newFile
Run Code Online (Sandbox Code Playgroud)

让我解释一下这里发生了什么 -F"," 指定逗号作为字段分隔符。

对于缺失的列,我替换为文本 9999,您可以替换为您喜欢的任何内容。第一个命令将 stdout 重定向到名为“newFile”的文件,第二个命令将 stdout 附加到同一文件。

我希望这会有所帮助,您的问题不是不清楚您想如何处理每个文件中缺少的字段。