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
以行为单位,对文本文件进行排,并输出排序结果。默认情况下,以每一行为一个单位,从首字符开始按照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