我一直在尝试打印最常见的行并删除关于在第一个字段中有很多不同值的大文件中由制表符分隔的键值的重复项;
示例输入:
a|gofortheeyeboo 0.61
a|gofortheeyeboo 0.81
a|gofortheeyeboo 0.81
a|gofortheeyeboo 0.81
a|gofortheeyeboo 0.81
a|gofortheeyeboo 0.81
a|gofortheeyeboo 0.91
a|gofortheeyeboo-gone 0.07
a|gofortheeyeboo-gone 0.07
a|gofortheeyeboo-abouttogone 0.61
a|gofortheeyeboo-abouttogone 0.12
b|attaack-attack 0.07
不同键所需的输出:
a|gofortheeyeboo 0.81
a|gofortheeyeboo-gone 0.07
a|gofortheeyeboo-abouttogone 0.61
a|gofortheeyeboo-abouttogone 0.12
b|attaack-attack 0.07
到目前为止,管理在第二个制表符分隔的字段中获取最大值的输出,删除重复项;
awk -F '\t' '{ if (l[$1] <= $2) l[$1] = $2} END {for (i in l) print i"\t"l[i];}'
上面不需要的命令的输出;
a|gofortheeyeboo 0.91
a|gofortheeyeboo-abouttogone 0.61
b|attaack-attack 0.07
a|gofortheeyeboo-gone 0.07