Unixフラットファイルに次のデータがあり、最初の2つの列の重複値を抑制し、次のように変換しようとしています。
1:x:4:3:2:y
1:x:7:9:l:z
1:0:3:j:k:m
2:9:r:s:6:u
2:m:y:5:7:9
2:u:7:9:7:6
3:a:b:c:d:e
3:a:b:d:e:f
3:a:b:n:r:s
到着する:
1:x:4:3:2:y
: :7:9:l:z
:0:3:j:k:m
2:9:r:s:6:u
:m:y:5:7:9
:u:7:9:7:6
3:a:b:c:d:e
: :b:d:e:f
: :b:n:r:s
ベストアンサー1
直接使用awk
:
$ awk -F':' '++a[$1] > 1{ $1=" " }++b[$2] > 1{ $2=" " }1' OFS=':' inp_file
1:x:4:3:2:y
: :7:9:l:z
:0:3:j:k:m
2:9:r:s:6:u
:m:y:5:7:9
:u:7:9:7:6
3:a:b:c:d:e
: :b:d:e:f
: :b:n:r:s