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 脚本完成此任务的最佳方法是什么?
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 附加到同一文件。
我希望这会有所帮助,您的问题不是不清楚您想如何处理每个文件中缺少的字段。