'True' は grep または awk と一致します。

'True' は grep または awk と一致します。

私が作業しているプロジェクトの場合は、特定のパターンと具体的に一致する必要がある識別子のリストが必要です。

デフォルトでは、ファイルには、関連する行を選択するために他のファイルで使用したいパターンのリストがあります。

幸いにもgrep -f patternfile.txt otherfile.txt > releventlinesfile.txtそれは動作しません。どちらもありませんgrep -w

otherfile.txtのファイル構造は次のとおりです。

test_id gene_id gene    locus   sample_1        sample_2        status  value_1 value_2 log2(fold_change)       test_stat       p_value q_value significant   
TSS10019        XLOC_007800     ABC73140       1:27498963-27503819     BA  BB  NOTEST  0.666344        0.628569        -0.0841946      0       1       1       no
TSS1002 XLOC_000726     ABC14350       1:4907952-4913152       BA  BB  NOTEST  0       0       0       0       1       1       no
TSS10020        XLOC_007801     ABC73150       1:27504093-27506154     BA  BB  OK      11.8553 13.3817 0.174729        1.26968 0.02755 0.107242        no
TSS10021        XLOC_007802     ABC73165       1:27508724-27508949     BA  BB  NOTEST  0       0       0       0       1       1       no
TSS10022        XLOC_007803     ABC73170       1:27511324-27514797     BA  BB  OK      0.893787        0.557083        -0.682037       -0.590335       0.33135 0.575735      -no

Patternfile.txt のファイル構造は次のとおりです。

TSS10020
TSS10056
TSS10378
TSS10708
TSS11795

私が望む出力:

TSS10020        XLOC_007801     ABC73150       1:27504093-27506154     BA  BB  OK      11.8553 13.3817 0.174729        1.26968 0.02755 0.107242        no

ベストアンサー1

結果で部分的に一致するのではなく、単語全体を一致させるには、オプション-w-f一緒に使用する必要があります。grep

grep -wf patternfile.txt otherfile.txt > releventlinesfile.txt 

おすすめ記事