当前位置: 移动技术网 > 科技>操作系统>Linux > Linux基础命令---sort

Linux基础命令---sort

2018年11月27日  | 移动技术网科技  | 我要评论

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

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网