基于awk中字段的值隔离行

基于awk中字段的值隔离行,awk,Awk,我有一个文本文件,如以下小示例: chr1 HAVANA exon 13221 13374 chr1 HAVANA exon 13453 13670 chr1 HAVANA gene 14363 29806 小例子: chr1 HAVANA exon 13221 13374 chr1 HAVANA exon 13453 13670 chr1 HAVANA gene 14363 29806

我有一个文本文件,如以下小示例:

chr1    HAVANA  exon    13221   13374
chr1    HAVANA  exon    13453   13670
chr1    HAVANA  gene    14363   29806
小例子:

chr1    HAVANA  exon    13221   13374
chr1    HAVANA  exon    13453   13670
chr1    HAVANA  gene    14363   29806
我正在尝试根据第3列筛选行。事实上,如果第三列是gene,我将保留整行并过滤掉其他行。以下是预期输出:

chr1    HAVANA  gene    14363   29806
预期产出:

chr1    HAVANA  gene    14363   29806
我正试图使用以下命令在
awk
中执行此操作,但结果为空。你知道怎么修吗

awk '{ if ($3 == 'gene') { print } }' infile.txt > outfile.txt

在脚本中使用双引号:

$ awk '{ if ($3 == "gene") { print } }' file
chr1    HAVANA  gene    14363   29806
或:

但你可以:

$ awk '$3 == "gene"'