[重複]をソートせずにテキストファイルからすべての重複を削除します。

[重複]をソートせずにテキストファイルからすべての重複を削除します。

簡単に言えば、私が知らないテキスト行を含むファイルがあります。

abaa
dddd
bbbb
cccc
abaa
aaaa
abaa

私が得たい結果は

dddd
bbbb
cccc
aaaa

すべての重複エントリが完全に削除されました。テキスト行が他の場所で繰り返される場合は、その行とそれに続く重複した項目をすべて削除してください。可能ですか?私のすべての検索には重複エントリが削除された出力が表示されるため、削除するインスタンスは1つだけ残ります。

ベストアンサー1

このアプローチを使用するには、ファイルを2回パスする必要があります。 1 つは各行の発生回数を計算すること、もう 1 つは 1 回だけ表示される行を印刷することです。

awk 'NR == FNR {count[$0]++; next}; count[$0] == 1' file file

おすすめ記事