単一フィールド番号を二重フィールド番号に置き換える(1-> 01)

単一フィールド番号を二重フィールド番号に置き換える(1-> 01)

次に始まるファイルがあります。

male 9
male 11
male 9
male 1
female 4
female 13
male 14

私が使うなら

sort -u -k1,1 -k2,2n

このリターン

female 13
female 4
male 1
male 11
male 14
male 9
male 9

1桁の数字が01、02などで表示され、正しく揃えるようにするにはどうすればよいですか?

修正する:

-u戻ると言われたコメント作成者の言葉が正しいです。

sort -k1,1 -k2,2n -u

効果はとても良いです。ありがとうございます!

ベストアンサー1

「を定義していません。正しいソート「どこでも最初の列に基づいてグループ化し、2番目の列の数値を昇順に並べ替え、重複値を削除したいとします。

sort -k1,1 -k2,2n -u datafile
female 4
female 13
male 1
male 9
male 11
male 14

2番目の列を2桁の数字で埋めるには、次のようにします。

xargs printf "%s %02d\n" <datafile
male 09
male 11
male 09
male 01
female 04
female 13
male 14

おすすめ記事