鉴于下表
123456.451 entered-auto_attendant
123456.451 duration:76 real:76
139651.526 entered-auto_attendant
139651.526 duration:62 real:62`
139382.537 entered-auto_attendant
使用基于 Linux 的 bash shell 脚本,我想根据第 1 列的值(具有长数字的值)删除所有行。考虑到这个数字是一个可变数字
我试过
awk '{a[$3]++}!(a[$3]-1)' file
sort -u | uniq
但我没有得到这样的结果,在第一列的所有值之间进行比较,删除所有重复项并显示它
123456.451 entered-auto_attendant
139651.526 entered-auto_attendant
139382.537 entered-auto_attendant
最佳答案
你没有给出预期的输出,这对你有用吗?
awk '!a[$1]++' file
使用您的数据,输出为:
123456.451 entered-auto_attendant
139651.526 entered-auto_attendant
139382.537 entered-auto_attendant
此行仅打印唯一的 column1 行:
awk '{a[$1]++;b[$1]=$0}END{for(x in a)if(a[x]==1)print b[x]}' file
输出:
139382.537 entered-auto_attendant
关于linux - 如何删除基于列值的重复行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22849757/