grepコマンドは、gffファイルの最初のファイルにある遺伝子のリストをgrepするために使用されます。

grepコマンドは、gffファイルの最初のファイルにある遺伝子のリストをgrepするために使用されます。

私はgffファイルの最初のファイルにある遺伝子のリストを特定するためにこのコマンドを使用しています。

grep  -w -f upregulated_genes_in_BEg GCA_900659725.1_ASM90065972v1_genomic.gff

私には効果がありません。提案を教えてください。

最初のファイルの遺伝子リスト..

LOCUS10095
LOCUS10108
LOCUS10129
LOCUS10130
LOCUS10152
LOCUS10161
LOCUS10225
LOCUS10252
LOCUS10266
LOCUS10268
LOCUS10294
LOCUS10313
LOCUS10351
LOCUS10355
LOCUS10358

ベストアンサー1

-wフラグをスキップすると、grep検索は単語の境界で一致するものに制限されます。~として定義されたgrep(文書から「単語全体を構成する一致を含む行のみを選択してください。」)。このコマンドは予想される出力を生成します。

cat > GCA_900659725.1_ASM90065972v1_genomic.gff <<EOF
CAACVG010000001.1 EMBL region 1 15202 . + . ID=CAACVG010000001.1:1..15202;Dbxref=taxon:64391;gbkey=Src;mol_type=genomic DNA;note=contig: 10000|quiver
CAACVG010000001.1 EMBL gene 4526 9821 . - . ID=gene-CALMAC_LOCUS1;Name=CALMAC_LOCUS1;gbkey=Gene;gene_biotype=protein_coding;locus_tag=CALMAC_LOCUS1
EOF

cat > upregulated_genes_in_BEg <<EOF
LOCUS1
LOCUS10095
EOF

grep -f upregulated_genes_in_BEg GCA_900659725.1_ASM90065972v1_genomic.gff

印刷:

CAACVG010000001.1 EMBL gene 4526 9821 . - . ID=gene-CALMAC_LOCUS1;Name=CALMAC_LOCUS1;gbkey=Gene;gene_biotype=protein_coding;locus_tag=CALMAC_LOCUS1

単語境界の正確な制御が必要な場合は、おそらく次のPerlの1行がより良い選択でしょう。

perl -lne 'BEGIN { @upregulated_genes_in_BEg = `cat upregulated_genes_in_BEg`; %is_upregulated_gene_in_BEg = map { $s = $_; chomp $s; ( $s => 1 ) } @upregulated_genes_in_BEg; } ( $gene ) = m{(LOCUS\w+)}; print if $is_upregulated_gene_in_BEg{ $gene };  ' GCA_900659725.1_ASM90065972v1_genomic.gff

1行のコードがアップレギュレートされた遺伝子を含むファイルの内容をハッシュ値として読み込みます。次に、そのハッシュを使用して、そのハッシュにLOCUS...現在の行にその単語が含まれていることを確認します。ハッシュに単語が含まれている場合は、その行を印刷してください。

Perlシングルライナーは、次のコマンドラインフラグを使用します。
-e:Perlにファイルではなくインラインコードを見つけるように指示します。
-n:一度に1行ずつ入力を繰り返し、デフォルト$_で割り当てられます。 :コードインラインを実行する前に、入力行区切り文字(* NIXのデフォルト)を削除して
-l印刷するときに追加します。"\n"

また見なさい:
perldoc perlrun:Perlインタプリタの実行方法:コマンドラインスイッチ
perldoc perlre:Perl正規表現(正規表現)
perldoc perlre:Perl正規表現(regexes):数量子、文字クラス、その他の特殊エスケープグループ。
perldoc perlrequick: Perl 正規表現によるクイックスタート

おすすめ記事