Linux中文本处理工具之sort命令详解
作者:Wing 发布时间:2023-08-28 15:19:58
前言
sort命令将每一行作为一个单位进行比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按一定的顺序进行输出,实际上,sort命令可以被认为是一个非常强大的数据治理工具,用来治理内容类似数据库记录的文件。下面来一起看看吧。
一、sort实战演练
sort.txt
root,x,0,0,root,/root,/bin/bash
daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
bin,x,2,2,bin,/bin,/usr/sbin/nologin
bin,x,2,2,bin,/bin,/usr/sbin/nologin
sys,x,3,3,sys,/dev,/usr/sbin/nologin
number.txt
9
8
90
82
2
human_readable.txt
2k
2G
2M
20M
实战演练
输出升序排序文件
> root@wing:~/wing # sort sort.txt
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
> daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
> root,x,0,0,root,/root,/bin/bash
> sys,x,3,3,sys,/dev,/usr/sbin/nologin
>
>
输出降序排序文件
> root@wing:~/wing # sort -r sort.txt
> sys,x,3,3,sys,/dev,/usr/sbin/nologin
> root,x,0,0,root,/root,/bin/bash
> daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
>
>
将sort文件按照第三列升序输出
> root@wing:~/wing # sort -t , -k 3 sort.txt
> root,x,0,0,root,/root,/bin/bash
> daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
> sys,x,3,3,sys,/dev,/usr/sbin/nologin
>
>
去掉重复行降序输出
> root@wing:~/wing # sort -ur sort.txt
> sys,x,3,3,sys,/dev,/usr/sbin/nologin
> root,x,0,0,root,/root,/bin/bash
> daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
>
二、sort常用参数
-b, –ignore-leading-blanks
忽略每一行开头的空格,从第一个不是空格的字符开始比较。
-c, –check, –check=diagnose-first
检查文件是否已经排序,如果没有排序,则输出第一个未排序的行,如果已经排序,则返回1.
>root@wing:~/wing # sort -c sort.txt
>sort: sort.txt:2: disorder: daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
>
-C, –check=quiet, –check=silent
与-c参数功能一致,不同的是,如果没有排序,该参数并不会输出第一个未排序的行,二是什么都不会输出。
> root@wing:~/wing # sort -c sort.txt
> sort: sort.txt:2: disorder: daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
> root@wing:~/wing #
>
-f, –ignore-case
忽略大小写,将所有的小写字母转换为大写字母进行比较。
-h, –human-numeric-sort
以人类可读的方式排序,如对k,G进行排序。
> root@wing:~/wing # sort human_readable.txt
> 20M
> 2G
> 2k
> 2M
> root@wing:~/wing # sort -h human_readable.txt
> 2k
> 2M
> 20M
> 2G
>
-M, –month-sort
按月份排序,如JAN,MAR等等。
-n, –numeric-sort
将数字转换为数值的方式排序。
> root@wing:~/wing # sort number.txt
> 2
> 8
> 82
> 9
> 90
> root@wing:~/wing # sort -n number.txt
> 2
> 8
> 9
> 82
> 90
>
-R, –random-sort
以随机的方式进行排序。
> root@wing:~/wing # sort -R sort.txt
> daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
> sys,x,3,3,sys,/dev,/usr/sbin/nologin
> root,x,0,0,root,/root,/bin/bash
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
>
> root@wing:~/wing # sort -R sort.txt
> root,x,0,0,root,/root,/bin/bash
> sys,x,3,3,sys,/dev,/usr/sbin/nologin
> daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
>
> root@wing:~/wing # sort -R sort.txt
> root,x,0,0,root,/root,/bin/bash
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
> bin,x,2,2,bin,/bin,/usr/sbin/nologin
> daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin
> sys,x,3,3,sys,/dev,/usr/sbin/nologin
>
-r, –reverse
默认是升序排序,加上-r参数是降序排序。
-o, –output=FILE
将sort命令的结果输出到另一个文件中。
-u, –unique
和-c参数一起时,并没有什么用;
不与-c参数一起时,将所有的行去重后排序输出。
-t, –field-separator
分隔符。
-k, –key
根据key去排序,可以是列的位置或者类型。


猜你喜欢
- 北京时间11月14日消息,据国外媒体报道,微软Office 2010 beta版提前泄露,用户不必等到下周微软正式发布,现在就可以在P2P网
- 这个神通广大的模块就是mod_gzip. 它通过用和gzip一样的压缩算法对apache发出的页面进行压缩,可能的话可以把页面压缩成为原来大
- 先给大家介绍下Vmware临时文件存放路径临时文件会存放在路径C:\Users\admin\AppData\Local\Temp\vmwar
- 也许有用户在使用GoDaddy主机时,常会发送一些垃圾邮件,在此我建议大家还是不要发了。如果一旦被认定为发垃圾邮件,他们会在两天内转向,暂停
- 如果你已经是 Google AdSense 内容发布商,如果希望自己的网站获得更高的收入,非常有必要深入了解 Google 的优化建议。在
- 阿卡人SEO:多次经验教您脱离百度沙盒今年第一次尝试被百度列入沙盒子的感觉,还好自己没有灰心坚持自己辛苦经营的站。在很短的时间脱离了沙盒。后
- VMware Workstation 不可恢复错误: (vcpu-1) Exception 0xc0000005 (access violation) has occurred终极解决方案(最新推荐)问题VMware Workstation 不可恢复错误: (vcpu-0) Exception 0xc0000005 (access vio
- 伴随着UCenter Home(简称UCHome)1.5的发布,国内越来越多垂直细分的社交网站采用UCHome搭建。同时,漫游(Manyou
- 前言大家都知道,我们使用Vim的一点好处就是,可定制性非常高,如果遇到任何让自己感到不适的痛点,都可以通过配置甚至开发一款插件来解决。开始使
- 在网络营销实战密码读者交流网站上,一个朋友问了一个关于首页链接的问题:“关于网站的逻辑结构,应该是和树型物理结构相吻合,也就是也就是由首页到
- 为了方便,最近用vitualbox搭了一个centos7的虚拟机,整个过程比较简单,在这里记录一下。下载vitualbox直接去官网(htt
- 从最近几天吵得热火的Blogbus的“自频道”,到早些时候Feedsky低调推出的“我的博客圈”,再到更早之前的Google Reader的
- 信息服务器IIS是BACKOFFICE系列产品 * 能最强大、最流行的应用程序,它与整个BACKOFFICE组件一样,IIS也是围绕WINDO
- 最近在百度和google上搜索了“官方下载”这个关键词,发现两处都是迅雷排在第一,然后都是腾讯QQ,
- IResearch艾瑞咨询根据Service Excellence Research Group发布的2008年美国在线厂商对网站各项功能的
- 环境安装JAVA在这里使用yum来安装java的jdk,可以使用指令yum search java | grep jdk来查看yum下提供了
- 有Godaddy主机用户问可以给Godaddy添加域名吗?那当然了,从某一个托管帐户托管多个域名是有可能的。Deluxe及Premium计划
- 搜索引擎会对恶意进行SEO的网站进行惩罚,如清除所有链接。百度对作弊的判断条件:(1)在网页源代码的任意位置,故意加入与网页内容不相关的关键
- 当提到内容的创意时,我们通常会把主要的注意力集中到提高内容可信度上,似乎我们正在写一些系列化的书籍,然而,博客并不是一本书。实际上,网上的博
- 前言:新上一台阿里的云主机,提供web服务,各种环境搭建完成,能够提供服务,没想到在最后的监控环节遇到各种发邮件的坑,这里分享给大家,你是否