次のテキストファイルがあります。
1 bob A
1 jim B
1 Kate A
1 Nancy C
1 bill A
1 Jason A
2 James B
2 fill B
2 cake C
2 lucky C
2 Lucy A
2 lily B
各グループ1と2のデータを3列で並べ替えるにはどうすればよいですか?出力は次のようになります。
1 bob A
1 Kate A
1 bill A
1 Jason A
1 jim B
1 Nancy C
2 Lucy A
2 James B
2 fill B
2 lily B
2 cake C
2 lucky C
Kate
入力順に表示されるため、出力の前に表示されます。bill
列1には1、2から2000までの非常に大きな値があるため、行数を比較するときは単に特定の値と同じだけでなく、awk printも考慮します。
ベストアンサー1
sort
ファイルは、最初の列に基づいて数値順に、3番目の列に基づいてアルファベット順にソートされます。
sort -s -k1n,1 -k3,3 file
注:-s
POSIX仕様の拡張です。