日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux 中使用 sort 指令分组排序详解

發布時間:2025/3/12 linux 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux 中使用 sort 指令分组排序详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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 : 4089

2. 數據處理

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 : 1383

2.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 : 1383

2.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 : 3738

2.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 : 3738

2.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

總結

以上是生活随笔為你收集整理的Linux 中使用 sort 指令分组排序详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。