Shell:sort工具
2021/7/10 7:10:09
本文主要是介绍Shell:sort工具,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
简介
sort命令是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出或重定向输出到指定文件。
语法
sort (options) 参数
选项 | 说明 |
---|---|
-n | number,依照数值的大小排序 |
-r | reverse, 以相反的顺序来排序 |
-t 分隔字符 | 设置排序时所用的分隔字符, 默认空格是分隔符 |
-k | 指定需要排序的列 |
-d | 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。 |
-f | 排序时,将小写字母视为大写字母 |
-b | 忽略每行前面开始出的空格字符 |
-o 输出文件 | 将排序后的结果存入指定的文件 |
-u | 意味着是唯一的(unique),输出的结果是去完重了的 |
-m | 将几个排序好的文件进行合并 |
参数:指定待排序的文件列表
案例
准备一个文件
vi sort.txt 张三 99 李四 100 王五 88 二哈 90 赵六 78 java 60
按照“ ”空格分割后的第2列数字升序排序。
sort -t " " -k2n,2 sort.txt
按照“ ”空格分割后的第2列数字降序排序。
sort -t " " -k2nr,2 sort.txt
将降序结果保存到文件
sort -t " " -k2nr,2 -o sort2.txt sort.txt
先按照“ ”空格分割后的, 然后,按照第2列数字升序排序, 最后对所有列去重
sort -t " " -k2n,2 -uk1,2 sort.txt
多列排序
准备数据:
vi sort3.txt 公司A,部门A,3 公司A,部门B,0 公司A,部门C,10 公司A,部门D,9 公司B,部门A,30 公司B,部门B,40 公司B,部门C,43 公司B,部门D,1 公司C,部门A,30 公司C,部门B,9 公司C,部门C,100 公司C,部门D,80 公司C,部门E,60
要求: 以","分割先对第一列字符串升序, 再对第3列数字降序
sort -t "," -k1,1 -k3nr,3 sort3.txt
总结
能够使用sort对字符串升序或降序排序
字符串升序:
sort -kstart,end 文件
字符串降序:
sort -kstartr,end 文件
能够使用sort 对数字升序或降序
数字升序:
sort -kstartn,end 文件
数字降序:
sort -kstartnr,end 文件
能够使用sort 对多列进行排序
sort -kstart[nr],end -kstart[nr],end ... 文件
这篇关于Shell:sort工具的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-22项目:远程温湿度检测系统
- 2024-12-21《鸿蒙HarmonyOS应用开发从入门到精通(第2版)》简介
- 2024-12-21后台管理系统开发教程:新手入门全指南
- 2024-12-21后台开发教程:新手入门及实战指南
- 2024-12-21后台综合解决方案教程:新手入门指南
- 2024-12-21接口模块封装教程:新手必备指南
- 2024-12-21请求动作封装教程:新手必看指南
- 2024-12-21RBAC的权限教程:从入门到实践
- 2024-12-21登录鉴权实战:新手入门教程
- 2024-12-21动态权限实战入门指南