次のファイルがあります。
Chr1 Cufflinks exon 7136 7944 . + . gene_id "XLOC_000001"; transcript_id "TCONS_00000003"; exon_number "5"; gene_name "LOC_Os01g01010"; oId "TCONS_00000003"; nearest_ref "LOC_Os01g01010.2"; class_code "="; tss_id "TSS1"; p_id "P2";
Chr1 Cufflinks exon 8028 8150 . + . gene_id "XLOC_000001"; transcript_id "TCONS_00000003"; exon_number "6"; gene_name "LOC_Os01g01010"; oId "TCONS_00000003"; nearest_ref "LOC_Os01g01010.2"; class_code "u"; tss_id "TSS1"; p_id "P2";
行に「u」がある限り、行全体を取得したいと思います。
出力は次のようになります。
Chr1 Cufflinks exon 8028 8150 . + . gene_id "XLOC_000001"; transcript_id "TCONS_00000003"; exon_number "6"; gene_name "LOC_Os01g01010"; oId "TCONS_00000003"; nearest_ref "LOC_Os01g01010.2"; class_code "u"; tss_id "TSS1"; p_id "P2";
頑張ったgrep -o "u" a >b
答え1
以下を使用すると、awk
列22を一致させることができます。
awk '$22=="\"u\";"' a
答え2
grep "\"u\";" a >b
仕事もします。
答え3
を含む行だけが必要な最も簡単な場合は、次のように"u"
します。
grep '"u"' a > b
gffファイルの説明フィールドでのみ一致することを確認するには(これがgffファイルであると仮定)正しい形式タブで区切られたフィールドを含むgffファイル)次のことができます。
awk -F"\t" '$NF~/"u"/' a > b
"u"
最後に、プロパティフィールドの7番目のサブフィールドにあるケースにのみ興味がある場合は、次のことを使用できます。
awk -F";" '$7~/"u"/' a > b
答え4
または:grep
class_code "u"
grep 'class_code "u"' input