sort

      以行为单位,对文本文件进行排,并输出排序结果。默认情况下,以每一行为一个单位,从首字符开始按照ASCII码向后逐个比较。

      此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

 

1、语法

      sort [选项]  file

      sort [OPTION]... --files0-from=F

 

2、选项列表

选项

说明

--help

显示帮助文档

--version

显示版本信息

-b

忽略每行开头的空白字符

-d | --dictionary-order

排序时只考虑空格、数字、英语字母

-f | --ignore-case

将小写字母改为大写

-g | --general-numeric-sort

按一般数值比较

-i | --ignore-nonprinting

只考虑040到176之间的ASCII字符

-M | --month-sort

按月份排序

-h | --human-numeric-sort

按可读性数据排序,例如1K,2G

-n | --numeric-sort

按数值大小排序        

-R | --random-sort

按键的随机散列排序

--random-source=FILE

从文件中获取随机字节

-r | --reverse

逆序排列

--sort=WORD

按给出的要求排序:general-numeric  -g,  human-numeric  -h,  month  -M, numeric -n, random -R, version -V

-V | --version-sort

按版本数字排序

--batch-size=NMERGE

最多一次合并NMERGE个输入;更多地使用temp文件

-c | --check | --check=diagnose-first

检测是否已排序,不排序

-C | --check=quiet | --check=silent

和“-c”一样,不要报告第一个坏行

--compress-program=PROG

用prog压缩时间,用prog-d解压

--files0-from=F

从文件F中以NUL结尾的名称指定的文件读取输入;如果F是-,则从标准输入中读取名称。

-k | --key=POS1[,POS2]

在POS 1(起始1)处启动键,在POS 2(默认行尾)结束键

-m | --merge

合并已经排序的文件,不排序

-o | --output=file

将结果输出到指定文件

-s | --stable

通过禁用最后的比较来稳定排序

-S | --buffer-size=SIZE

主内存缓冲器使用SIZE

-t | --field-separator=SEP

使用sep代替分隔符

-T | --temporary-directory=DIR

将DIR用于临时目录,而不是$TMPDIR或/tmp;多个选项指定多个目录

-u, --unique

和“-c”一起使用,检查是否有严格的排序;如果没有-c,则只输出相同运行的第一个。

-z, --zero-terminated

结束行为0字节,而不是换行符

 

3、实例

1)直接排序

[root@192 weijie]# cat 1.c

1K

1M

1G

1T

[root@192 weijie]# sort 1.c         //直接对比字符排序

1G

1K

1M

1T

2)按照可读的单位来排序 

[root@192 weijie]# sort -h 1.c       //文件的内容按照单位排序,这些很明显是内存大小单位

1K

1M

1G

1T

3)按照数字排序

[root@192 weijie]# cat 2.c

123

23

212

[root@192 weijie]# sort 2.c         //默认排序,按照字符逐个比较

123

212

23

[root@192 weijie]# sort -n 2.c     //把内容当做数字排序

23

123

212

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!