Linux 基础教程

Linux 参考手册

Linux 笔记

linux 文件排序命令 sort 详解

Linux 命令行大全手册详解 Linux 命令行大全手册详解


Linux sort 命令将文件进行排序,并将排序结果标准输出。它既可以从特定的文件,也可以从 stdin 中获取输入。sort 玲玲将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按 ASCII 码值进行比较,最后将他们按升序输出,当然了,具体比较的原则、列数、升降序方式都可以通过参数指定。

命令格式

sort [OPTION]... [FILE]...

另一种形式:

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

命令选项

-k, --key=KEYDEF
指定要排序的栏位(列数,索引从1开始),和分隔符 -t 一起使用。
-n, --numeric-sort
根据数值大小进行排序,需要指定的排序数据是数字。
-r, --reverse
倒序排列,默认是升序的。
-t, --field-separator=SEP
每行指定一个非空的分隔符。

命令参数

[FILE]:指定待排序的文件列表。

示例

根据指定分隔符分隔后,以第二栏位(列)的数值降序排列。

[demo@knowledgedict ~]$ cat demo.txt
a:4:c
b:2:k
g:6:p
[demo@knowledgedict ~]$ sort -t ':' -k 2 -n demo.txt 
b:2:k
a:4:c
g:6:p