做个外贸网站多少钱,软件手机站,新手做外贸哪个平台好,微信公众官网登录入口Linux 中使用 sort 指令分组排序详解
sort 中进行分组排序主要用到的选项为 -k#xff0c;此文#xff0c;我们着重于该选项的使用方式#xff0c;用到的其它选项不做解释#xff0c;有兴趣的同学可以查看帮助文档
1. 数据准备
现有数据如下#xff0c;文件名 sort_so…Linux 中使用 sort 指令分组排序详解
sort 中进行分组排序主要用到的选项为 -k此文我们着重于该选项的使用方式用到的其它选项不做解释有兴趣的同学可以查看帮助文档
1. 数据准备
现有数据如下文件名 sort_source.txt
Nov 1 : 4548
Nov 2 : 1383
Oct 2 : 3738
Oct 3 : 418
Nov 4 : 1383
Nov 14 : 1383
Nov 11 : 1381
Nov 12 : 1381
Oct 4 : 4105
Oct 5 : 40892. 数据处理
2.1 按某一列进行排序
# 按第一列进行月份排序
sort -k 1M sort_source.txt
# 输出如下
Oct 2 : 3738
Oct 3 : 418
Oct 4 : 4105
Oct 5 : 4089
Nov 11 : 1381
Nov 12 : 1381
Nov 14 : 1383
Nov 1 : 4548
Nov 2 : 1383
Nov 4 : 1383# 按第 2 列进行数字排序
sort -k 2g sort_source.txt
# 输出如下
Nov 1 : 4548
Nov 2 : 1383
Oct 2 : 3738
Oct 3 : 418
Nov 4 : 1383
Oct 4 : 4105
Oct 5 : 4089
Nov 11 : 1381
Nov 12 : 1381
Nov 14 : 13832.2 分组排序
# 先按第一列进行排序分组再按第二列进行排序
sort -k 1M -k2g sort_source.txt
# 输出如下
Oct 2 : 3738
Oct 3 : 418
Oct 4 : 4105
Oct 5 : 4089
Nov 1 : 4548
Nov 2 : 1383
Nov 4 : 1383
Nov 11 : 1381
Nov 12 : 1381
Nov 14 : 13832.3 按某列的某几个字符进行排序
2.3.1 不指定分割符的情况下
不指定分割符的情况下会从空格处进行计数起始偏移量为 1
# 按第四列的第二、三个可显字符进行数字排序
sort -k 4.3,4.4g sort_source.txt
# 输出如下注意第3个字符是从空白字符开始算起始为 1
Oct 5 : 4089 # 第四列第3个字符为0
Oct 4 : 4105
Oct 3 : 418
Nov 11 : 1381
Nov 12 : 1381
Nov 14 : 1383
Nov 2 : 1383
Nov 4 : 1383
Nov 1 : 4548
Oct 2 : 37382.3.2 指定分割符的情况下
指定分割符时以第一个非指定字符为起始偏移量为 1
# 按第四列的第二、三个字符进行数字排序
sort -t -k 4.2,4.3g sort_source.txt
# 输出如下注意第2个字符是从非空白字符开始算起始为 1
Oct 5 : 4089 # 第四列第2个字符为0
Oct 4 : 4105
Oct 3 : 418
Nov 11 : 1381
Nov 12 : 1381
Nov 14 : 1383
Nov 2 : 1383
Nov 4 : 1383
Nov 1 : 4548
Oct 2 : 37382.3.2 指定分割符的情况下按某列内的某一个字符进行排序
注意要按某个确切的字符进行排序则起始偏移量和结束偏移量要相同且必须要指定结束偏移量
# 按第四列的第3个字符进行数字排序
sort -t -k 4.3,4.3g sort_source.txt
# 输出如下注意第3个字符是从非空白字符开始算起始为 1
Oct 4 : 4105
Oct 2 : 3738
Nov 1 : 4548
Nov 11 : 1381
Nov 12 : 1381
Nov 14 : 1383
Nov 2 : 1383
Nov 4 : 1383
Oct 3 : 418
Oct 5 : 4089