在文本文件组行和汇总相应的行列 [英] Group rows in text file and aggregate corresponding rows to column
本文介绍了在文本文件组行和汇总相应的行列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
组行中的文本文件和聚集相应的行列
现有文本文件
约翰|生活
约翰|温度
约翰|管理
彼得|生活
彼得|管理
马特|生活
马特|管理
马特|温度
所需的输出
约翰|生活,温度,管理员
彼得|生活,管理员
马特|生活,温度,管理员
在此先感谢
解决方案
命令
的awk -F|
$ 1 == X {
printf的%S,$ 2
下一个
}
{
X = $ 1
printf的\\ n%S |%S,$ 1,$ 2
}
结束 {
printf的\\ n
}'input.txt中
结果
约翰|生活,温度,管理员
彼得|生活,管理员
马特|生活,管理,温度
Group rows in text file and aggregate corresponding rows to column
Existing text file
John|Life
John|Temp
John|Admin
Peter|Life
Peter|Admin
Matt|Life
Matt|Admin
Matt|Temp
Desired output
John|Life,Temp,Admin
Peter|Life,Admin
Matt|Life,Temp,Admin
Thanks in advance
解决方案
command
awk -F '|' '
$1==x{
printf ",%s", $2
next
}
{
x=$1
printf "\n%s|%s", $1, $2
}
END {
printf "\n"
}' input.txt
result
John|Life,Temp,Admin
Peter|Life,Admin
Matt|Life,Admin,Temp
这篇关于在文本文件组行和汇总相应的行列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文