linux 中grep命令限制数字匹配的次数

 

001、

[root@PC1 test]# ls
a.txt
[root@PC1 test]# cat a.txt                         ## 测试数据
NC_052532.1     tRNAscan-SE     TRNAD-GUC_1
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229
NC_052532.1     tRNAscan-SE     TRNAS-AGA_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_3
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
NC_052532.1     tRNAscan-SE     TRNAD-GUC_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_4
NC_052532.1     tRNAscan-SE     TRNAI-AAU_2
[root@PC1 test]# grep "_[0-9]$" a.txt             ## 匹配末尾为_数字的数据,进匹配了一次
NC_052532.1     tRNAscan-SE     TRNAD-GUC_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_4
NC_052532.1     tRNAscan-SE     TRNAI-AAU_2

 

 

002、

[root@PC1 test]# ls
a.txt
[root@PC1 test]# cat a.txt
NC_052532.1     tRNAscan-SE     TRNAD-GUC_1
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229
NC_052532.1     tRNAscan-SE     TRNAS-AGA_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_3
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
NC_052532.1     tRNAscan-SE     TRNAD-GUC_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_4
NC_052532.1     tRNAscan-SE     TRNAI-AAU_2
[root@PC1 test]# grep "_[0-9]\+" a.txt              ## 匹配末尾_加数字一次以上
NC_052532.1     tRNAscan-SE     TRNAD-GUC_1
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229
NC_052532.1     tRNAscan-SE     TRNAS-AGA_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_3
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
NC_052532.1     tRNAscan-SE     TRNAD-GUC_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_4
NC_052532.1     tRNAscan-SE     TRNAI-AAU_2

 

 

003、

[root@PC1 test]# cat a.txt
NC_052532.1     tRNAscan-SE     TRNAD-GUC_1
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229
NC_052532.1     tRNAscan-SE     TRNAS-AGA_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_3
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
NC_052532.1     tRNAscan-SE     TRNAD-GUC_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_4
NC_052532.1     tRNAscan-SE     TRNAI-AAU_2
[root@PC1 test]# grep "_[0-9]\{2\}$" a.txt      ## 指定匹配次数为2次
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
[root@PC1 test]# grep "_[0-9]\{3\}$" a.txt      ## 指定匹配次数为3次
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229

 

 

004、

[root@PC1 test]# ls
a.txt
[root@PC1 test]# cat a.txt
NC_052532.1     tRNAscan-SE     TRNAD-GUC_1
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229
NC_052532.1     tRNAscan-SE     TRNAS-AGA_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_3
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
NC_052532.1     tRNAscan-SE     TRNAD-GUC_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_4
NC_052532.1     tRNAscan-SE     TRNAI-AAU_2
[root@PC1 test]# grep "_[0-9]\{2\}$" a.txt        ## 匹配两次
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
[root@PC1 test]# grep "_[0-9]\{2,\}$" a.txt       ## 匹配数字至少两次
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12

 

005、

[root@PC1 test]# ls
a.txt
[root@PC1 test]# cat a.txt
NC_052532.1     tRNAscan-SE     TRNAD-GUC_1
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229
NC_052532.1     tRNAscan-SE     TRNAS-AGA_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_3
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
NC_052532.1     tRNAscan-SE     TRNAD-GUC_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_4
NC_052532.1     tRNAscan-SE     TRNAI-AAU_2
[root@PC1 test]# grep "_[0-9]\{,2\}$" a.txt      ## 匹配至多为两次
NC_052532.1     tRNAscan-SE     TRNAD-GUC_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_3
NC_052532.1     tRNAscan-SE     TRNAS-AGA_45
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
NC_052532.1     tRNAscan-SE     TRNAD-GUC_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_4
NC_052532.1     tRNAscan-SE     TRNAI-AAU_2

 

 

006、

[root@PC1 test]# ls
a.txt
[root@PC1 test]# cat a.txt
NC_052532.1     tRNAscan-SE     TRNAD-GUC_1
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229
NC_052532.1     tRNAscan-SE     TRNAS-AGA_1
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAS-AGA_3
NC_052532.1     tRNAscan-SE     TRNAS-AGA_453344
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12
NC_052532.1     tRNAscan-SE     TRNAD-GUC_3
NC_052532.1     tRNAscan-SE     TRNAD-GUC_4325635
NC_052532.1     tRNAscan-SE     TRNAI-AAU_2
[root@PC1 test]# grep "_[0-9]\{2,5\}$" a.txt         ## 匹配至少为2次,至多为5次
NC_052532.1     tRNAscan-SE     TRNAD-GUC_229
NC_052532.1     tRNAscan-SE     TRNAS-AGA_27
NC_052532.1     tRNAscan-SE     TRNAI-AAU_12

 

posted @ 2023-02-07 09:36  小鲨鱼2018  阅读(323)  评论(0编辑  收藏  举报