以下はファイルのテキストです。
1NPD:A|PDBID|CHAIN|SEQUENCE MDVTAKYELIGLMAYPIRHSLSPEMQNKALEKAGLPFTYMAFEVDNDSFPGAIEGLKALKMRGTGVSMPNKQLACEYV
1NPD:B|PDBID|CHAIN|SEQUENCE MDVTAKYELIGLMAYPIRHSLSPEMQNKALEKAGLPFTYMAFEVDNDSFPGAIEGLKALKMRGTGVSMPNKQLACEYV
1NPY:A|PDBID|CHAIN|SEQUENCE MINKDTQLCMSLSGRPSNFGTTFHNYLYDKLGLNFIYKAFTTQDIEHAIKGVRALGIRGCAVSMPFKETCMPFLDEIH
1NPY:B|PDBID|CHAIN|SEQUENCE MINKDTQLCMSLSGRPSNFGTTFHNYLYDKLGLNFIYKAFTTQDIEHAIKGVRALGIRGCAVSMPFKETCMPFLDEIH
1NPY:C|PDBID|CHAIN|SEQUENCE MINKDTQLCMSLSGRPSNFGTTFHNYLYDKLGLNFIYKAFTTQDIEHAIKGVRALGIRGCAVSMPFKETCMPFLDEIH
1NPY:D|PDBID|CHAIN|SEQUENCE MINKDTQLCMSLSGRPSNFGTTFHNYLYDKLGLNFIYKAFTTQDIEHAIKGVRALGIRGCAVSMPFKETCMPFLDEIH
1NVT:A|PDBID|CHAIN|SEQUENCE GPLGSMINAKTKVIGLIGHPVEHSFSPIMHNAAFKDKGLNYVYVAFDVLPENLKYVIDGAKALGIVGFNVTIPHKIEI
1NVT:B|PDBID|CHAIN|SEQUENCE GPLGSMINAKTKVIGLIGHPVEHSFSPIMHNAAFKDKGLNYVYVAFDVLPENLKYVIDGAKALGIVGFNVTIPHKIEI
最初のスペースを削除したいです。タブもあると思います。 ID(例:1NPD、1NPYなど)のみを維持したいです。 A、B、Cのいずれでも、各シーケンスには1つのIDしか必要ありません。
これが私が望むファイルの外観です。
1NPD
1NPY
1NVT
ベストアンサー1
ファイルで処理するテキストがあり、ファイルin.file
に書き込もうとすると、out.file
次のようになります。
tr -d ' ' < in.file | cut -d':' -f1 | sort -u > out.file
まず、in.fileからスペースを削除します。tr -d ' ' < in.file
2 つ目は ':' を区切り文字として使用してテキストをフィールドに切り捨て、最初のフィールドのみを選択します。cut -d':' -f1
最後に、結果がソートされ、一意の項目が選択され、out.fileに書き込まれます。sort -u > out.file