Linux之关于sort命令的使用详解

发布时间 - 2017-06-07 00:00:00    点击率:

sort是在linux里非常常用的一个命令,将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ascii码值进行比较,最后将他们按升序输出。

这里有一个文件test,内容为:

8723 23423
321324 213432
23 234
123 231
234 1234
654 345234

1. sort的-t选项和-k选项

sort提供了-t选项,后面可以设定间隔符, -k来指定列数。

对第一列排序

sort test

对第二列进行排序

sort -k 2 test

如果将test文件的内容改为:

8723,23423
321324,213432
23,234
123,231
234,1234
654,345234

如果要对第二列按照大小排序

sort -t "," -k 2 test

如果没有-t选项的话,就是默认的空格或者tab键,因此上面就没有使用-t选项。

2. 倒序排列使用 -r 选项

sort默认的排序方式是升序,-r参数则是改成降序

sort -r test

输出结果:

8723 23423
654 345234
321324 213432
234 1234
23 234
123 231

3. sort的-n选项

sort默认按ASCII码值进行比较, 所以大家看上面2中的结果会发现, 8723 比 321324 却排在了最前面。 那我们如何让它按照数字大小排序呢?这时候就该-n参数出场了。

sort -n test

输出结果:

23 234
123 231
234 1234
654 345234
8723 23423
321324 213432
sort -rn test

输出结果:

321324 213432
8723 23423
654 345234
234 1234
123 231
23 234

附:sort命令参数详解

-f  将小写字母都转换为大写字母来进行比较,亦即忽略大小写

-c  检查文件是否已排好序,如果乱序,则输出第一个乱序的行的相关信息,最后返回1

-C  检查文件是否已排好序,如果乱序,不输出内容,仅返回1

-M  以月份来排序,比如JAN小于FEB等等

-b  忽略每一行前面的所有空白部分,从第一个可见字符开始比较

-u  在输出行中去除重复行, 不改变文件本身内容


# linux  # 升序  # 第一个  # 是在  # 则是  # 是从  # 亦即  # 如果没有  # 相关信息  # 作为一个  # 要对 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  制作企业网站建设方案,怎样建设一个公司网站?  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  Android 常见的图片加载框架详细介绍  如何在IIS7中新建站点?详细步骤解析  b2c电商网站制作流程,b2c水平综合的电商平台?  创业网站制作流程,创业网站可靠吗?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案  Java遍历集合的三种方式  Angular 表单中正确绑定输入值以确保提交与验证正常工作  如何快速使用云服务器搭建个人网站?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  jQuery 常见小例汇总  java中使用zxing批量生成二维码立牌  利用 Google AI 进行 YouTube 视频 SEO 描述优化  百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧  Laravel如何使用Eloquent进行子查询  Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程  Laravel如何生成和使用数据填充?(Seeder和Factory示例)  网站制作价目表怎么做,珍爱网婚介费用多少?  潮流网站制作头像软件下载,适合母子的网名有哪些?  javascript中数组(Array)对象和字符串(String)对象的常用方法总结  javascript中对象的定义、使用以及对象和原型链操作小结  重庆市网站制作公司,重庆招聘网站哪个好?  网易LOFTER官网链接 老福特网页版登录地址  Laravel定时任务怎么设置_Laravel Crontab调度器配置  如何为不同团队 ID 动态生成多个非值班状态按钮  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  中山网站推广排名,中山信息港登录入口?  Swift中switch语句区间和元组模式匹配  Laravel模型关联查询教程_Laravel Eloquent一对多关联写法  Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】  EditPlus 正则表达式 实战(3)  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  微信小程序 scroll-view组件实现列表页实例代码  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤  Laravel怎么在Blade中安全地输出原始HTML内容  如何快速搭建高效WAP手机网站?  使用spring连接及操作mongodb3.0实例  详解jQuery停止动画——stop()方法的使用  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  如何在自有机房高效搭建专业网站?  如何用美橙互联一键搭建多站合一网站?  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  UC浏览器如何设置启动页 UC浏览器启动页设置方法