sort命令简介
sort命令:sort 是 Linux 的排序命令,而且可以依据不同的数据类型来进行排序。sort 将文件的每一行作为一个单位,相互比较。比较原则是从首字符向后,依次按 ASCII 码值进行比较,最后将它们按升序输出。
1.语法
sort [参数] 文件名 (echo + | 也可以)
2.参数讲解
参数:
-f:忽略大小写
-b:忽略每行前面的空白部分
-n:以数值型进行排序,默认使用字符串排序
-r:反向排序
-u:删除重复行。就是 uniq 命令
-t:指定分隔符,默认分隔符是制表符
-k [n,m]:按照指定的字段范围排序。从第 n 个字段开始,到第 m 个字(默认到行尾)
3.用法示例
- 不带任何参数进行排序
# 文件内容
[root@nginx~]# cat test.txt
a
c
d
h
b
e
# 开始排序 看到已经讲字母从abcd按顺序进行排序,验证了开头那句话, 命令将以默认的方式将文本文件的第一列以 ASCII 码的次序排列
[root@nginx~]# cat test.txt|sort
a
b
c
d
e
h
- -n 以数值型进行排序,默认使用字符串排序
# 由小到大的进行排序,如果想要从大到小则使用-r倒序
[root@nginx~]# last|awk '{print $3}'|sort|uniq -c|sort -n
1
1 Fri
1 Mon
1 Sat
1 Sun
4 Wed
19 boot
34 10.0.0.1
- -r 倒序
[root@nginx~]# last|awk '{print $3}'|sort|uniq -c|sort -nr
34 10.0.0.1
19 boot
4 Wed
1 Sun
1 Sat
1 Mon
1 Fri
1
- -u 排序并去重等价于uniq
10.0.0.1
10.0.0.1
boot
boot
boot
........
[root@Template ~]# last|awk '{print $3}'|sort -u
10.0.0.1
boot
Fri
Mon
Sat
Sun
Wed
总结
以上sort的这个命令的总体介绍,希望能帮助到您。