首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >redhat linux排序的奇怪行为

redhat linux排序的奇怪行为
EN

Stack Overflow用户
提问于 2019-01-11 22:44:19
回答 1查看 36关注 0票数 0

Redhat linux,要排序的文件- "aaa":

4;AAA;456

3;BBB;567

2;AAA;123

1;BBB;234

5;AAA;000

仅按第二个字段排序-命令:

sort -t ";“-k2,2 aaa

输出为:

2;AAA;123

4;AAA;456

5;AAA;000

1;BBB;234

3;BBB;567

在我看来,输出应该是:

4;AAA;456

2;AAA;123

5;AAA;000

3;BBB;567

1;BBB;234

排序时出错?

EN

回答 1

Stack Overflow用户

发布于 2019-01-11 22:57:50

可能还有其他原因,但我猜这是您的“观点”,因为您认为对于具有相同键的记录,首先在文件中遇到的应该是输出中的第一个。

这就是所谓的“稳定排序”。

稳定的排序可能需要更多的工作,而且在大多数情况下不是必需的,因此默认情况下排序命令不会执行此操作。这就是你看到的结果。

但是,如果你想这样做,它可以做到:

代码语言:javascript
复制
$ sort --stable --field-separator=";" --key="2,2" aaa
4;AAA;456
2;AAA;123
5;AAA;000
3;BBB;567
1;BBB;234
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54148736

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档