linux 中实现将指定列中多个连续的字符压缩为一个字符

 

001、

(base) [b20223040323@admin2 test]$ ls
a.txt
(base) [b20223040323@admin2 test]$ cat a.txt       ## 测试数据
gene
exon
exon
exon
exon
--------
gene
exon
exon
--------
gene
exon
exon
exon
exon                                        ## 将多个连续的exon压缩为单个exon
(base) [b20223040323@admin2 test]$ awk '{if($1 == "exon") {sum++} else {sum = 0}; if(sum > 1) {next} else {print $0}}' a.txt
gene
exon
--------
gene
exon
--------
gene
exon

 。

 

posted @ 2023-07-07 08:48  小鲨鱼2018  阅读(13)  评论(0编辑  收藏  举报