フィールドから重複値を削除する

フィールドから重複値を削除する

コピーを1つだけ保持しながら、ファイルの選択したフィールド内で重複(または複数)の値を削除するにはどうすればよいですか?

はい

入力ファイル:

A    1,2,3,45,1,8,2,3
B    5,6,6,6,6,6,2,3,7

予想出力:

A    1,2,3,45,8
B    5,6,2,3,7

ベストアンサー1

一つずつsed:

sed '
  s/[^[:blank:]]\{1,\}/,&,/g;:1
  s/\(\(,[^,[:blank:]]*\)\(,[^,[:blank:]]*\)*\)\2,/\1,/;t1
  s/,\([^[:blank:]]*\),/\1/g'

(文字を含むすべてのフィールドを処理,し、間隔を維持します)

おすすめ記事