【awk】输出和过滤重复行【转载】
2020-04-07 本文已影响0人
Silver_42ac
awk 'a[$0]++' filename //用于输出重复的行
awk '!a[$0]++' filename //用于去掉重复的行
其主要的原理,是利用AWK的类似字典的a, 用每一行的内容作为索引,如果行不存在 则没有a[0)有内容,则默认 a[
0]=a[$0]+1
实际上 awk 这里是在判断,因为没写在花括号里;和grep 一个效果
a[$0]++先返回,而后++
第二次读到相同的行,a[$0]++返回非0值。