次のようなファイルが4つあります。
file A
>TCONS_00000867
>TCONS_00001442
>TCONS_00001447
>TCONS_00001528
>TCONS_00001529
>TCONS_00001668
>TCONS_00001921
file b
>TCONS_00001528
>TCONS_00001529
>TCONS_00001668
>TCONS_00001921
>TCONS_00001922
>TCONS_00001924
file c
>TCONS_00001529
>TCONS_00001668
>TCONS_00001921
>TCONS_00001922
>TCONS_00001924
>TCONS_00001956
>TCONS_00002048
file d
>TCONS_00001922
>TCONS_00001924
>TCONS_00001956
>TCONS_00002048
すべてのファイルには2000を超える行が含まれ、最初の列に基づいてソートされます。
すべてのファイルで共通点を見つけたいです。 awk、grep、commを試しましたが、うまくいきません。
ベストアンサー1
ファイルはすでにソートされているので:
comm -12 a b |
comm -12 - c |
comm -12 - d
comm
ファイル間の行を見つけますcomm
。デフォルトでは、comm
タブで区切られた3つの列を印刷します。
- 最初のファイルに固有の行、
- 2番目のファイルに固有の行、
- 両方のファイルに共通の行です。
-1
、、、-2
オプションを使用すると、その列-3
を抑制します。したがって、レポートとcomm -12 a b
公開行。 stdinを表すためにファイル名の代わりに使用できます。a
b
-