系统相关
首页 > 系统相关> > 在Linux中,提取行连续出现3次或更多次

在Linux中,提取行连续出现3次或更多次

作者:互联网

我在Linux中有一个表:

A 0
A 0
A 0
B 0
B 1
B 0
B 1
B 0

我想提取连续出现3次或更多次的线条.

我的预期输出是:

A 0

实际上,3次或更多只是一个简化的例子.实际情况是我想提取连续出现30次以上的行.

任何的想法?

谢谢!

解决方法:

uniq -c file | awk '$1 >= 3 { print $2,$3 }'

uniq -c将输出每​​一行以及该行连续出现的次数.对于给定的数据,它将产生

   3 A 0
   1 B 0
   1 B 1
   1 B 0
   1 B 1
   1 B 0

如果第一个字段大于或等于3,awk脚本将采用此输出并输出最后两个字段.

结果将是

A 0

标签:linux,awk,text-processing,table
来源: https://codeday.me/bug/20190816/1663768.html