各列の名前が複数回繰り返される列を持つファイルがあります。同じ名前の異なる反復と隣接していない同じ名前の異なる反復を維持しながら、各反復を1つに圧縮したいと思います。
たとえば、左を右に回したいと思います。
Golgb1 Golgb1
Golgb1 Akna
Golgb1 Spata20
Golgb1 Golgb1
Golgb1 Akna
Akna
Akna
Akna
Spata20
Spata20
Spata20
Golgb1
Golgb1
Golgb1
Akna
Akna
Akna
これが私が使用したものです。perl -ne 'print if ++$k{$_}==1' file.txt > file2.txt
ただし、このアプローチは左側に1人の担当者だけを保持します(つまり、Golb1とAknaは重複しません)。
隣接していない複数のブロックで繰り返される名前を維持しながら、各ブロックの一意の名前を維持する方法はありますか?
ベストアンサー1
uniq
あなたのためにこれをします:
$ uniq inputfile
Golgb1
Akna
Spata20
Golgb1
Akna