排序和把相同的放到一起;

42.1、sort命令介绍:

sort命令是一个排序介绍,简而言之就是以什么为分割符,对第几列进行什么排序操作;

42.2、sort命令参数介绍:

-u #去重,会直接把重复的去除 和sort uniq.txt | uniq 等价;

-r #降序,默认的参数是升序;

-n #按照数字进行排序;

-t #指定分割符,默认是空字符串为分割符,类似于awk的-F(awk 默认也是以字符为分割符的),cut的-d;

-k #指定从第几列进行排序,要先指定分割符,默认的分割符是空格;

-k 1,3 #用逗号进行分割字段,指定多列进行排序,表示以第一列和第二列数据进行排序;

-k 1.1,3.3 #;用点号分割字符,表示对第一列的第一个字符到第三列的第三个字符进行排序,此方法可以使用多个k值;

sort如果没有任何参数情况下是:

把相同的放到一起,以空字符串为分割符,然后按第一列进行升序排序;

42.3、实验案例1:

1、实验数据:

[root@backup scripts]# cat sort.txt

10.0.0.9

10.0.0.8

10.0.0.7

10.0.0.7

10.0.0.8

10.0.0.8

10.0.0.9

2、不加参数:

[root@backup scripts]# sort sort.txt

10.0.0.7

10.0.0.7

10.0.0.8

10.0.0.8

10.0.0.8

10.0.0.9

10.0.0.9

3、-n参数:

#按照数字进行升序排序;

[root@backup scripts]# sort -n sort.txt

10.0.0.7

10.0.0.7

10.0.0.8

10.0.0.8

10.0.0.8

10.0.0.9

10.0.0.9

4、-r参数:

#对数据进行降序排列;

[root@backup scripts]# sort -r sort.txt

10.0.0.9

10.0.0.9

10.0.0.8

10.0.0.8

10.0.0.8

10.0.0.7

10.0.0.7

5、按照数字进行降序排列:

[root@backup scripts]# sort -rn sort.txt

10.0.0.9

10.0.0.9

10.0.0.8

10.0.0.8

10.0.0.8

10.0.0.7

10.0.0.7

42.4、实验案例2:

1、实验数据:

[root@backup scripts]# cat sort.txt

10.0.0.9 a

10.0.0.8 k

10.0.0.7 r

10.0.0.7 n

10.0.0.8 c

10.0.0.8 z

10.0.0.9 o

2、指定分割符和指定的列进行排序:

[root@backup scripts]# sort -t " " -k 2 sort.txt

10.0.0.9 a

10.0.0.8 c

10.0.0.8 k

10.0.0.7 n

10.0.0.9 o

10.0.0.7 r

10.0.0.8 z

[root@backup scripts]# sort -k 2 sort.txt

10.0.0.9 a

10.0.0.8 c

10.0.0.8 k

10.0.0.7 n

10.0.0.9 o

10.0.0.7 r

10.0.0.8 z

42.5、企业案例:

1、对mac地址指定多列进行排序:

1)实验数据:

[root@backup scripts]# cat mac.txt

192.168.3.12 00:30:15:A2:3A:A1

192.168.3.10 00:30:15:A2:3B:B6

192.168.3.3 00:0F:AF:85:70:42

192.168.3.3 00:0F:AF:85:70:42

192.168.3.2 00:0F:AF:85:6C:42

192.168.3.1 00:0F:AF:81:19:1F

192.168.2.22 00:0F:AF:85:5C:41

192.168.2.22 00:0F:AF:85:5C:41

192.168.2.21 00:0F:AF:85:6C:09

192.168.2.20 00:0F:AF:85:55:DE

192.168.2.2 00:0F:AF:85:55:DE

192.168.1.152 00:0F:AF:85:6C:25

2)方法一:

[root@backup scripts]# sort -t "." -k 3.1,3.1 -nr -k 4.1,4.3 -nr mac.txt

192.168.3.12 00:30:15:A2:3A:A1

192.168.3.10 00:30:15:A2:3B:B6

192.168.3.3 00:0F:AF:85:70:42

192.168.3.3 00:0F:AF:85:70:42

192.168.3.2 00:0F:AF:85:6C:42

192.168.3.1 00:0F:AF:81:19:1F

192.168.2.22 00:0F:AF:85:5C:41

192.168.2.22 00:0F:AF:85:5C:41

192.168.2.21 00:0F:AF:85:6C:09

192.168.2.20 00:0F:AF:85:55:DE

192.168.2.2 00:0F:AF:85:55:DE

192.168.1.152 00:0F:AF:85:6C:25

2、查看系统磁盘使用大小:

du -h --max-depth=1 / | sort -n

42、sort命令的更多相关文章

  1. shell之sort命令

    1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出. [rocrocket@rocrocket progr ...

  2. 【转】linux sort 命令详解

    sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按AS ...

  3. sort命令

    1.默认情况下,sort命令,以字母序进行文本排序sort word.txt2.如果想对数字进行排序,可以使用-n参数sort num.txt -n3指定列排序下面是对passwd文件,以冒号(:)进 ...

  4. Linux sort命令

    200 ? "200px" : this.width)!important;} --> 介绍 sort命令是一个文本排序命令,它能对标准输入和文本文件进行排序,并且能将结果通 ...

  5. 3. sort命令

    转自:http://www.cnblogs.com/51linux/archive/2012/05/23/2515299.html sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分 ...

  6. linux sort 命令详解

    sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按AS ...

  7. [shell基础]——sort命令

    sort命令 sort是按照ASCII码升序输出,且是从首字符依次向后比较的 常见选项      -c 测试文件是否已经被排序 -r  逆向排序      -n 按照数字数值大小排序 -t  指定分割 ...

  8. linux sort 命令详解(转 )

    linux sort 命令详解 sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比 ...

  9. linux sort命令学习

    linux sort命令以行为单位对文本文件进行排序. 接下来我们会以/tmp/sort_test.txt这个文本文件为例对sort命令的用法进行说明. sh-# cat /tmp/sort_test ...

随机推荐

  1. JDK、JRE 和 JVM 的区别

    JDK JDK 是 Java Development Kit 的缩写,JDK 是 Java 语言的软件开发工具包( SDK ).它提供了Java 开发.编译.运行需要的文件和环境. 如果你是 Java ...

  2. JDK 14 都已经发布了,Java 8 依然是我的最爱

    在 JDK 版本的世界里,从来都是 Oracle 发他的新版本,我们 Java 程序员继续用我们的老版本 几年之前用 JDK 7,后来终于升级到了 JDK 8.自从升级了没多久,JDK 就开始了半年发 ...

  3. Centos7挂载windows共享目录

    将windows的共享目录挂载到Centos7 查看是否有mount.cifs命令,如果没有,在线安装 [root@dropbox-bak01 ~]# yum install cifs-utils - ...

  4. json字符串和字典的区别

    json字符串和字典的区别: json: (JavaScript Object Notation)的首字母缩写,字面的意思是(javascript对象表示法),这里说的json指的是类似于javasc ...

  5. SpringCloud专题之开篇及Eureka

    声明: 本专题部分理论来自翟永超老师的<Spring Cloud微服务实战>.建议大家看原书. 开篇 微服务简单来说是系统架构上的一种设计风格,他的主旨是将一个原本独立且庞大的系统按照不同 ...

  6. 入坑java工程师那些事

    最近在知乎上看到好多关于转行做java的朋友,有的在担心学历,有的在想着如何学习java,有的在纠结如何面试.作为一个工作了近10年的java程序员来聊聊我的一些想法,主要从学历.个人能力.工作环境等 ...

  7. 如何优雅的做参数校验-JSR330

    前言: 本文不是讲@Validate.@Valid是如何使用的.区别是什么,想看这些内容的请换篇文章. 背景: 当前端传过来的参数是进行对称性加密.base64加密等处理后过的参数时,在control ...

  8. stream的groupby出来的map是有顺序的map

    stream分组后的map是有序map List<RedisInstanceTypeDto> typeDtoList = ModuleHelper.mapAll(redisInstance ...

  9. Ascend Pytorch算子适配层开发

    Ascend Pytorch算子适配层开发 适配方法 找到和PyTorch算子功能对应的NPU TBE算子,根据算子功能计算出输出Tensor的size,再根据TBE算子原型构造对应的input/ou ...

  10. Tesla T4视频编码性能分析

    Tesla T4视频编码性能分析 从开普勒开始的所有 NVIDIA GPUs 都支持完全加速的硬件视频编码: GPUs 支持完全加速的硬件视频解码.最近发布的图灵硬件提供了张量核心和更好的机器学习性能 ...