Linux排序命令sort笔记

举报
IT技术分享社区 发表于 2022/12/12 22:47:42 2022/12/12
【摘要】 很多时候Linux需要对文本相对比较规范的文本数据进行排序,这时候可以使用Linux系统下的sort命令进行处理。 语法格式:sort [-ntkr] filename

8.jpeg

很多时候Linux需要对文本相对比较规范的文本数据进行排序,这时候可以使用Linux系统下的sort命令进行处理。

语法格式:sort [-ntkr] filename

常用参数:

-n 根据数字进行排序

-t 指定的分隔符

-k 指定分隔符的第几列

-r 降序排序

用法示例:

先创建一个sort.txt的文本文件,表示各科的成绩,内容如下:

a 98 80 100 95

d 88 99 95 82

b 89 83 80 100

c 60 98 79 90


cat sort.txt | sort #默认会按照第一列进行排序


输出结果:

a 98 80 100 95

b 89 83 80 100

c 60 98 79 90

d 88 99 95 82


cat sort.txt | sort -n -k 2 #按照第二列进行排序


输出结果:

c 60 98 79 90

d 88 99 95 82

b 89 83 80 100

a 98 80 100 95


cat sort.txt | sort -n -t " " -k 3 -r

#按照第三列进行、指定分割符为空格、降序排序

d 88 99 95 82

c 60 98 79 90

b 89 83 80 100

a 98 80 100 95


注意:如果不加-n 参数,Linux默认会按照排序列第一个字符进行排序,比如21和3如果不加-n参数的话,系统会按照21第一个字符2和3比较,如果升序的化21会在3的前面,所有如果是数字的排序,必须要加上-n参数,从而保证排序的正确性。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。