使用’sort -g’bash命令对带有指数的浮点数进行排序

前端之家收集整理的这篇文章主要介绍了使用’sort -g’bash命令对带有指数的浮点数进行排序前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个浮点数与指数的文件,我想对它们进行排序. AFAIK’sort -g’是我需要的.但看起来好像是浮子扔掉了所有的指数.所以输出看起来像这样(这不是我想要的):
$cat file.txt | sort -g
8.387280091e-05
8.391373668e-05
8.461754562e-07
8.547354437e-05
8.831553093e-06
8.936111118e-05
8.959458896e-07

这让我有两个问题:

>为什么’sort -g’不起作用,因为我期望它起作用?
>我如何使用bash命令对文件进行排序?

这是一个巧妙的伎俩:
$sort -te -k2,2n -k1,1n test.txt 
8.461754562e-07
8.959458896e-07
8.831553093e-06
8.387280091e-05
8.391373668e-05
8.547354437e-05
8.936111118e-05

-te将你的数字分成两个字段,用e将尾数与指数分开. -k2,2表示首先按指数排序,然后-k1,1表示接下来用你的尾数排序.

适用于sort命令的所有版本.

原文链接:https://www.f2er.com/bash/384233.html

猜你在找的Bash相关文章