[009]sort命令使用

背景

查找日志的時(shí)候我們經(jīng)常需要獲取某個(gè)維度的信息,這個(gè)涉及到截取字段和排序了,比如按照?qǐng)?zhí)行時(shí)間排序。

sort 命令解析

sort的工作原理
sort將文件的每一行作為一個(gè)單位,相互比較,比較原則是從首字符向后,依次按ASCII碼值進(jìn)行比較,最后將他們按升序輸出。

如果想按照某一列排序,就需要把列分割出來 且指定某一列。 分割列通過參數(shù) -t '分隔符',指定某一列通過參數(shù) -k 列索引,比如 -k 4 -k 5就是先按第4列再按第5列排序。

面對(duì)sort命令我暫時(shí)提出問題:
1.如果有不可見的字符怎么辦?
2.大小寫怎么辦?
3.排序如何只取前面幾個(gè)。
對(duì)于這些問題如果sort有解決可以通過man sort解決
4.sort 支持特定領(lǐng)域的排序,比如按照月份排序等等。

man sort
 -b, --ignore-leading-blanks
              ignore leading blanks

       -d, --dictionary-order
              consider only blanks and alphanumeric characters

       -f, --ignore-case
              fold lower case to upper case characters

-n 按照數(shù)字排序 -t ','按照,分割 (-k 4 -k 5 先按第四列排序 再按第5 列排序)
默認(rèn):是按照整行比對(duì)排序,

樣例:讀取一個(gè)文件先按第2列降序排列再按第4列降序排列
[stlm@Develop-Mcp ~]$ cat 71000001_20170104.txt |sort -n -t ',' -k 2r -k 4r | head -10
20170104,17010450052451,REFUND,3,0,
20170104,17010450052405,REFUND,1,0,
20170104,17010450052385,SUCCESS,1200,0,
20170104,17010450052327,REFUND,1,0,
20170104,17010450052325,REFUND,1,0,
20170104,17010450052322,REFUND,1,0,
20170104,17010450052313,SUCCESS,11,0,
20170104,17010450051848,REFUND,10,0,
20170104,17010450051790,SUCCESS,1000,0,
20170104,17010450051786,REFUND,15000,0,

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 概述 排序有內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部...
    蟻前閱讀 5,298評(píng)論 0 52
  • 概述:排序有內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部...
    每天刷兩次牙閱讀 3,819評(píng)論 0 15
  • 概述排序有內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部的...
    Luc_閱讀 2,371評(píng)論 0 35
  • sort是在Linux里非常常用的一個(gè)命令,管排序的,集中精力,五分鐘搞定sort,現(xiàn)在開始! 1 sort的工作...
    你清澈又神秘閱讀 856評(píng)論 0 2
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,899評(píng)論 0 33

友情鏈接更多精彩內(nèi)容