以下に「csv」スプレッドシートがあります。
abc,12345,qwerty,A
xyz,12380,qwetty,R
abc,12389,qwerty,A
xyz,12324,qwetty,R
列1、2、および4で同じ値を持つ行をマージしたいと思います。また、3列の最後の2文字を「**」に変更したいと思います。出力例は次のとおりです。
abc,123**,qwerty,A
abc,123**,qwerty,A
xyz,123**,qwetty,R
xyz,123**,qwetty,R
総ライン数が100万ラインを超えています!
ベストアンサー1
まず、col1、col2、col4の順にファイルを並べ替えるには、次の手順を実行します。
$ sort -t, -k1,1 -k2,2 -k4,4 file
abc,12345,qwerty,A
abc,12389,qwerty,A
xyz,12324,qwetty,R
xyz,12380,qwetty,R
次に、2番目のフィールドを難読化するには、次のようにします。
$ sort -t, -k1,1 -k2,2 -k4,4 file | sed 's/..,/**,/2'
abc,123**,qwerty,A
abc,123**,qwerty,A
xyz,123**,qwetty,R
xyz,123**,qwetty,R