shell排序命令-sort

sort命令是以行为单位对多行数据进行排序。
shell排序命令-sort_第1张图片
例如有文本文件test_sort, 其中有五行内容,利用sort命令,可将这五行内容按字典序从小到大排序。
如果sort命令什么都不加,默认是以第一个字母的ASCII码值开始进行比较,如果第一个字母相同,则比较第二个字母,以此类推。
除了不需要标明参数而执行默认参数外,sort还提供了一些选项:
-f: 忽略大小写排序(系统会将所有的小写自动转化为大写进行比较排序)
-n: 以数值型进行排序(众所周知,shell的默认类型是字符型,如果对1123, 132, 23, 312进行默认排序,系统将会对这四个数字进行字典排序而非数字排序,排序后的结果为:1123, 132, 23, 312,但如果加上参数-n,系统将以数字大小对这四个数进行排序)
shell排序命令-sort_第2张图片
-r: 反向排序
-t: 指定分隔符, -t后边为指定的分隔符。默认以Tab键为分割符
-k: -k n,表示从第几字段开始进行比较,默认是从指定字段的第一个字母到行尾,也可以指定一个字段区间,中间用,(逗号隔开),比如2, 3,表示只比较第二到第三字段之间的字符,一般-k和-t配合使用。
shell排序命令-sort_第3张图片
比如有文本文件test_sort,其中有四行内容,我们选定分隔符为下划线”_”,并从第二个字段开始进行比较,排序结果如上图所示。
若有不对之处,敬请指正

你可能感兴趣的:(Linux基础知识)