我想按以下方式对前两个字段的数据进行分组
样本数据:
CHECK|checkadm|block1
CHECK|checkadm|block2
CHECK|checkadm|block3
CHECK|checkadm|block4
TEST|testadm|block1
TEST|testadm|block2
TEST|testadm|block3
最终输出
CHECK|checkadm|block1|block2|block3|block4
TEST|testadm|block1|block2|block3
我会做什么,在每一行上使用数组连接:
使用GNU datamash版本 1.8(假设输入已经像问题中的示例一样排序):
datamash -t'|' -g1,2 collapse 3 <ip.txt | tr ',' '|'
如果您的输入没有逗号字符,您可以使用早期版本。