私は次のファイルを持っています:
1 2 3
1 4 5
1 6 7
2 3 5
5 2 1
そして、ファイルを2番目の列でソートする必要がありますが、最大数(この場合は6)から最小数に並べ替えます。私はで試しました
sort +1 -2 file.dat
しかし、それは私に逆の順序を与えます。
結果は次のようになります。
1 6 7
1 4 5
2 3 5
5 2 1
1 2 3
sort -nrk 2,2
トリックを行います。
nは数値の並べ替え、rは逆順、k2,2は2番目の列です。
-rを試しましたか?マニュアルページから:
-r、-reverse
reverse the result of comparisons
言及したように、ほとんどのバージョンにsort
は、-r
あなたが試していない場合のオプションがありますtac
:
$ sort -nk 2,2 file.dat | tac
1 6 7
1 4 5
2 3 5
5 2 1
1 2 3
$ sort -nrk 2,2 file.dat
1 6 7
1 4 5
2 3 5
5 2 1
1 2 3
tac-ファイルを逆に連結して印刷します