跟老男孩学Linux运维-核心系统命令实战-第3章-文件过滤及内容编辑处理命令-sort文本排序

3.11.sort 文本排序(*****

3.11.1.命令详解

#-b 忽略每行开头存在的空格字符
#-n 依照数值的大小进行排序 ---常用---
#-r 倒序排列 ---常用---
#-u 去除重复行
#-t 指定分隔符 ---常用---
#-k 按指定区间排序 ---常用--- 

3.11.2.使用范例

1.基础范例

#3-42:默认以行为单位进行比较
cat oldboy.txt

#内容如下
10.0.0.4
10.0.0.4
10.0.0.4
10.0.0.5
10.0.0.4
10.0.0.8

#不接收任何参数,会将文件内容转换成 ASCII 码,然后进行比较。因为在 ASCII 码中,数字排序和我们的认知是一样的,因此结果如下所示
10.0.0.4
10.0.0.4
10.0.0.4
10.0.0.4
10.0.0.5
10.0.0.8

#3-43:通过参数 -n 使输出按数字从小到大的顺序进行排序
sort -n oldboy.txt

#3-44:通过参数 -r 使输出按降序排序
sort -nr oldboy.txt

#3-45:通过参数 -u 去除重复行
sort -u oldboy.txt

#3-46:通过参数 -t、-k 指定列排序
cat oldboy1.txt

#内容如下:
10.0.0.4 r
10.0.0.4 g
10.0.0.4 a
10.0.0.5 n
10.0.0.4 q
10.0.0.8 l

#默认是按第1列进行排序
10.0.0.4 a
10.0.0.4 g
10.0.0.4 q
10.0.0.4 r
10.0.0.5 n
10.0.0.8 l

#-t 选项指定以空格为分隔符,-k 选项后接 2 即表示按照第2列进行排序
sort -t " " -k2 oldboy1.txt

#3-47:参数 -t、-k 的进阶使用方式
#-n:按数字排序
#-t.:按 "." 作为分隔域
#-k3,3:按第3个字段开始到第3个字段结束排序
#-k4.1,4.3:按第4个字段第1个字符开始到第4个字段第3个字符结束排序
#".":点号连接的是字符
#",":逗号连接的是字段
sort -n -t. -k3,3 -k4.1,4.3 arp.txt

2.企业面试题

posted on 2020-01-16 08:38  herisson_pan  阅读(15)  评论(0)    收藏  举报

导航