一、命令简介
Linux sort命令用于将文本文件内容加以排序。sort可针对文本文件的内容,以行为单位来排序。sort命令将每一行作为一个单位进行比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按一定的顺序进行输出。sort命令经常可以与ls、cat等命令结合使用,将查询到的结果按照我们要求进行排序。
二、使用示例
1、默认安装字母排序
[root@test1 ~]# cat word.txt
one
two
two
three
four
[root@test1 ~]# sort word.txt
four
one
three
two
two
2、安装数字大小排序
[root@test1 ~]# cat num.txt
10
8
20
100
4
[root@test1 ~]# sort -n num.txt
4
8
10
20
100
3、去重后排序
[root@test1 ~]# sort -u word.txt
four
one
three
two
4、按照降序排序
[root@test1 ~]# sort -ur word.txt
two
three
one
four
5、文件夹大小排序
6、指定分隔符并按照指定列排序
7、将排序结果输出到文件
[root@test2 var]# sort -t ‘:’ -k 3 -nr /etc/passwd > /tmp/out.log
[root@test2 var]# cat /tmp/out.log
三、使用语法及参数说明
1、使用语法
用法:
#sort 选项 文件
#sort 选项 --files0-from=F
2、参数说明
| 参数 | 参数说明 |
|---|---|
| -b, --ignore-leading-blanks | 忽略每行前面开始出的空格字符。 |
| -c, --check, --check=diagnose-first | 检查文件是否已经按照顺序排序。 |
| -C, --check=quiet, --check=silent | 与-c参数类似,但不要报告第一行错误 |
| -d, --dictionary-order | 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。 |
| -g, --general-numeric-sort | 按一般数值比较 |
| -f, --ignore-case | 排序时,将小写字母视为大写字母。 |
| -i , --ignore-nonprinting | 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。 |
| -m , --merge | 将几个排序好的文件进行合并。 |
| -M , --month-sort | 将前面3个字母依照月份的缩写进行排序。 |
| -n, --numeric-sort | 依照数值的大小排序。 |
| -u , --unique | 意味着是唯一的(unique),输出的结果是去完重了的。 |
| -o<输出文件> | 将排序后的结果存入指定的文件。 |
| -r | 以相反的顺序来排序。 |
| -R, --random-sort –random-source=FILE | 按密钥的随机散列排序 |
| -t<分隔字符> | 指定排序时所用的栏位分隔字符。 |
| -k, --key=KEYDEF | 通过键排序;KEYDEF给出位置和类型 |
| -o, --output=FILE | 将结果写入文件而不是标准输出 |
| -s, --stable | 通过禁用最后的比较来稳定排序 |
| -S, --buffer-size=SIZE | 使用主内存缓冲区大小 |
| -t, --field-separator=SEP | 使用SEP代替非空到空转换 |
| -T, --temporary-directory=DIR | 将DIR用于临时变量,而不是$TMPDIR或/tmp; 多个选项指定多个目录 |
| -u, --unique | 与-c一起,检查是否严格排序; 没有-c,则只输出相等运行的第一个 |
| -z, --zero-terminated | 以0字节结束行,而不是换行 |
| +<起始栏位>-<结束栏位> | 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。 |
| –help | 显示帮助。 |
| –version | 显示版本信息。 |
本文介绍 Linux 下 sort 命令的功能及其使用方法,包括基本语法、参数说明及实用示例。sort 命令能对文本文件内容进行排序,并支持字母排序、数字排序、去重、逆序等多种操作。



2072

被折叠的 条评论
为什么被折叠?



