内容は次のようなファイルがあります。
19.58 1925 Alpha
20.40 1924 Otter
13.66 1920 Gold
以下を出力するために「列基準」でソートしようとしています。
13.40 1920 Alpha
19.58 1924 Gold
20.66 1925 Otter
次のようなさまざまなコードの組み合わせを試しました。
cat files | sort -t. -k1,1n | sort -t " " -k2,2n -k3,3r k4,4n
しかし、これは所望の結果を出力しない。私が言及したソートをどのように達成できますか?
ベストアンサー1
printf "%s.%s %s %s\n" $(paste <(awk -F'[. ]' '{print $1}' file | sort -n) <(awk -F'[. ]' '{print $2}' file | sort -n) <(awk -F'[. ]' '{print $3}' file | sort -n) <(awk -F'[. ]' '{print $4}' file | sort))
出力:
1920 13.40アルファ 19.58 1924年金 20.66 1925カワウソ