要将具有相同id的行的唯一内容合并到每一行中,可以使用awk命令来实现。下面是一个示例代码:
awk -F',' 'BEGIN{ OFS=FS } { a[$1] = a[$1] OFS $2 } END{ for (i in a) print i,a[i] }' file.csv
上述代码中,假设输入文件是file.csv
,包含两列以逗号分隔的数据。$1
表示第一列(id),$2
表示第二列(内容)。代码使用-F','
设置输入字段分隔符为逗号,BEGIN{ OFS=FS }
设置输出字段分隔符与输入字段分隔符相同。
在代码的执行过程中,使用a[$1]
来创建一个关联数组,数组的索引是id,值是内容。对于相同id的行,会将内容追加到数组的值后面,使用OFS
作为分隔符。最后,在END
块中,遍历数组并打印每一行的id和合并后的内容。
请注意,上述代码假设id列是唯一的,如果id列可能有重复值,那么需要根据具体需求进行修改。