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

linux – 在bash中对多个小数的数字进行排序

发布时间:2020-12-14 02:54:04 所属栏目:Linux 来源:网络整理
导读:在bash中使用带-n选项的sort不会给我预期的结果. $cat numbers | sort -n1.01.11.11.41.151.31.3.31.4-p11.6.12.2.102.2.22.42.4.6 我尝试使用-k1,-k1.1n等(-k1.3n仅对从1开始的数字获得正确的顺序).看来这里有一些我非常基本的东西…… 解决方法 你需要-t.
在bash中使用带-n选项的sort不会给我预期的结果.
$cat numbers | sort -n
1.0
1.1
1.11.4
1.15
1.3
1.3.3
1.4-p1
1.6.1
2.2.10
2.2.2
2.4
2.4.6

我尝试使用-k1,-k1.1n等(-k1.3n仅对从1开始的数字获得正确的顺序).看来这里有一些我非常基本的东西……

解决方法

你需要-t.用于指定’.’的标志作为您的分隔符,多个键位置说明符处理逐渐更长/更深的数字.我仍然不太确切地知道它是如何工作的,但是它有效……
sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n numbers

要么

cat numbers | sort -t. -k 1,4n

(编辑:李大同)

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

    推荐文章
      热点阅读