加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

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

发布时间:2020-12-16 01:17:42 所属栏目:安全 来源:网络整理
导读:我有一个浮点数与指数的文件,我想对它们进行排序. AFAIK’sort -g’是我需要的.但看起来好像是浮子扔掉了所有的指数.所以输出看起来像这样(这不是我想要的): $cat file.txt | sort -g8.387280091e-058.391373668e-058.461754562e-078.547354437e-058.831553
我有一个浮点数与指数的文件,我想对它们进行排序. AFAIK’sort -g’是我需要的.但看起来好像是浮子扔掉了所有的指数.所以输出看起来像这样(这不是我想要的):
$cat file.txt | sort -g
8.387280091e-05
8.391373668e-05
8.461754562e-07
8.547354437e-05
8.831553093e-06
8.936222228e-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.936222228e-05

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读