ファイルから重複エントリを削除する

ファイルから重複エントリを削除する

以下に示すように、複数の同一で重複した項目を含むファイルがあります。

123 abc nhjk
123 abc cftr
123 abc xdrt
123 def nhjk
123 def cftr
123 def xdrt

if(列)の組み合わせフィールド1そしてフィールド2一致する場合は、最初の一致時間を維持するだけです。だからそれ以来123そしてアルファベット最初の行の一致123そしてアルファベット2行目の場合は、1行目のみを保持します。より詳細に比較すると、最初の行と3番目の行も一致するため、最初の行だけが保持されます。

ただし、1行目と4行目の場合123そして123一致するがアルファベットそして定義一致するものがないため、両方の行が保持されます。

したがって、最終出力は次のようになります。

123 abc nhjk
123 def nhjk

ベストアンサー1

1つの方法は、元のファイルの順序は維持されないかもしれませんが、-uフラグを使用することです。sort

sort -k1,1 -k2,2 -u file

ファイルの順序を維持しながら重複排除を完了する必要がある場合

awk '!a[$1, $2]++' file

おすすめ記事