sort 的多列排序命令

sort 的多列排序命令,第1张

Linux 下面 sort 可以按列排序,功能强大,但是其排序的说明有些晦涩。

举例下面这个命令:

上面的命令表示 -k 表示指定排序的规则,这里表示从第一列的第一个字符开始,到第一列的第六个字符结束,作为排序的key,r表示反向排序。基于上面的排序之后,按第二列到最后一列排序,其排序规则为根据数字大小进行排序。

如果用 --debug 参数,可以清晰的看到不同的 key 按顺序排序的过程。

1. 最常用:直接排序。2. 输出排序并删除重复行。3. 按照数值大小进行排序。4. 按照倒序进行排列。5. 高级 *** 作 :按照第几列进行排序。

由于sort默认是把结果输出到标准输出,所以需要用重定向才能将结果写入文件,形如sort filename >newfile。但是,如果你想把排序结果输出到原文件中,用重定向可就不行了。

-f会将小写字母转换为大写字母来进行比较,亦即忽略大小写,-c会检查文件是否已排好序,如果乱序,则输出第一个乱序的行的相关信息,最后返回,-C会检查文件是否已排好序,如果乱序,不输出内容,仅返回,-M会以月份来排序,比如JAN小于FEB等等-b会忽略每一行前面的所有空白部分,从第一个可见字符开始比较。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8996424.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存