grep은 전체 라인을 가져옵니다

grep은 전체 라인을 가져옵니다

다음과 같은 파일이 있습니다.

  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

관련 정보