找到一行中的图案并打印该行

时间:2014-09-05 09:19:45

标签: bash perl awk

我有一个制表符分隔文件,如下所示:

chr1    28563   .   A   G   13.0    .   DP=3;VDB=3.520000e-02;AF1=1;AC1=2;DP4=0,0,0,2;MQ=25;FQ=-33;EFF=exon_variant(MODIFIER|||n.50+758T>C|WASH7P||NON_CODING|NR_024540.1|1)    GT:PL:GQ    1/1:44,6,0:9
chr1    537678  .   T   C   35.8    .   DP=2;VDB=6.880000e-02;AF1=1;AC1=2;DP4=0,0,0,2;MQ=37;FQ=-33;EFF=intergenic_region(MODIFIER||||||||)  GT:PL:GQ    1/1:67,6,0:10
chr1    537680  .   G   T   28.8    .   DP=2;VDB=6.880000e-02;AF1=1;AC1=2;DP4=0,0,0,2;MQ=37;FQ=-33;EFF=intergenic_region(MODIFIER||||||||)  GT:PL:GQ    1/1:60,6,0:10
chr1    540975  .   G   A   6.2 .   DP=7;VDB=3.422171e-02;RPB=1.053122e+00;AF1=0.5;AC1=1;DP4=2,1,2,1;MQ=19;FQ=7.43;PV4=1,0.34,0.19,1;EFF=intergenic_region(MODIFIER||||||||)    GT:PL:GQ    0/1:35,0,39:35

如果任何行EFF =外显,则应打印该行。

chr1    28563   .   A   G   13.0    .   DP=3;VDB=3.520000e-02;AF1=1;AC1=2;DP4=0,0,0,2;MQ=25;FQ=-33;EFF=exon_variant(MODIFIER|||n.50+758T>C|WASH7P||NON_CODING|NR_024540.1|1)    GT:PL:GQ    1/1:44,6,0:9

请帮助,用bash或perl中的一个衬垫。 谢谢

在我的情况下,应该打印这一行

1 个答案:

答案 0 :(得分:1)

你可以尝试下面的awk命令,

awk '/EFF=exon/{print}' file

OR

$ awk '/EFF=exon/' file
chr1    28563   .   A   G   13.0    .   DP=3;VDB=3.520000e-02;AF1=1;AC1=2;DP4=0,0,0,2;MQ=25;FQ=-33;EFF=exon_variant(MODIFIER|||n.50+758T>C|WASH7P||NON_CODING|NR_024540.1|1)    GT:PL:GQ    1/1:44,6,0:9