説明する

説明する

次のファイルがあります。

AA,true
AA,false
BB,false
CC,false
BB,true
DD,true

重複した項目を見つけて、同じ列値を持つ行を削除しようとしていますtrue

出力は次のようになります。

AA,false
BB,false
CC,false
DD,true

ベストアンサー1

簡単なバージョン:

sort input.txt | awk -F, '!a[$1]++'

「false」は「true」の前にアルファベット順にソートされます。ここで、Awkコマンドはそれぞれの一意の最初のフィールド値の最初の行のみを保持します。

「true」を維持し、「false」を維持したくない場合は、逆並べ替えて同じAwkコマンドに渡してから再配置します。

おすすめ記事