【发布时间】:2014-08-27 20:08:44
【问题描述】:
我必须将许多类似的 csv 文件合并到一个文件中。它们存储在许多不同的子目录中,但单个 csv 文件具有相同的名称。
我需要按列附加它们,但我只需要第一个“名称”列一次。所以我想保留第一个 csv 文件的第一列并将它们从所有后续文件中删除。参考this question 我尝试了以下命令:迭代所有子目录,而最终文件位于主目录中(并且在开始时是许多 csv 文件之一的副本,因此它已经包含“名称”列):
for i in */; do paste final_table.csv <(cut -f 2- "$i"single_table.csv) > final_table.csv ; done
但是,当输入文件之一也是输出文件时,粘贴似乎不起作用。 我该如何正确解决这个问题?
【问题讨论】:
标签: bash csv concatenation