使用 bash 的 sort -gr 问题 [关闭]

问题描述 投票:0回答:2

我想按数字降序对列表进行排序:

$cat b.txt
a -0.51
c 0.62
m -0.3
z -0.004
b -0.44

为此,我使用了“sort -gr -k 2”以获得:

$sort -gr -k 2
c 0.62
z -0.004
m -0.3
b -0.44
a -0.51

但是命令按字母顺序对它进行了排序。我认为该命令认为它只是一列。我尝试使用 -nr 但它不能很好地对浮点数进行排序。

bash list sorting numbers
2个回答
1
投票

使用gnuplot,我验证了

plot "<sort -k2gr file" using 0:2 with lines

真正按数字降序排列数字。你期望什么顺序?


0
投票

这样就好了:

echo 'a -0.51
c 0.62
m -0.3
z -0.004
b -0.44' | sort -rn -k 2
c 0.62
z -0.004
m -0.3
b -0.44
a -0.51

© www.soinside.com 2019 - 2024. All rights reserved.