天天看點

Linux基礎指令---sort

sort

      以行為機關,對文本檔案進行排,并輸出排序結果。預設情況下,以每一行為一個機關,從首字元開始按照ASCII碼向後逐個比較。

      此指令的适用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、文法

      sort  [選項]  file

      sort [OPTION]... --files0-from=F

2、選項清單

      --help

            顯示幫助文檔

      --version

            顯示版本資訊

      -b

            忽略每行開頭的空白字元

      -d | --dictionary-order

            排序時隻考慮空格、數字、英語字母

      -f | --ignore-case

            将小寫字母改為大寫

      -g | --general-numeric-sort

            按一般數值比較

      -i | --ignore-nonprinting

            隻考慮040到176之間的ASCII字元

      -M | --month-sort

            按月份排序

      -h | --human-numeric-sort

            按可讀性資料排序,例如1K,2G

      -n | --numeric-sort

            按數值大小排序

      -R | --random-sort

            按鍵的随機散列排序

      --random-source=FILE

            從檔案中擷取随機位元組

      -r | --reverse

            逆序排列

      --sort=WORD

            按給出的要求排序:general-numeric  -g,  human-numeric  -h,  month  -M, numeric -n, random -R, version -V

      -V | --version-sort

            按版本數字排序

      --batch-size=NMERGE

            最多一次合并NMERGE個輸入;更多地使用temp檔案

      -c | --check | --check=diagnose-first

            檢測是否已排序,不排序

      -C | --check=quiet | --check=silent

            和“-c”一樣,不要報告第一個壞行

      --compress-program=PROG

            用prog壓縮時間,用prog-d解壓

      --files0-from=F

            從檔案F中以NUL結尾的名稱指定的檔案讀取輸入;如果F是-,則從标準輸入中讀取名稱。

      -k | --key=POS1[,POS2]

            在POS 1(起始1)處啟動鍵,在POS 2(預設行尾)結束鍵

      -m | --merge

            合并已經排序的檔案,不排序

      -o | --output=file

            将結果輸出到指定檔案

      -s | --stable

            通過禁用最後的比較來穩定排序

      -S | --buffer-size=SIZE

            主記憶體緩沖器使用SIZE

      -t | --field-separator=SEP

            使用sep代替分隔符

      -T | --temporary-directory=DIR

            将DIR用于臨時目錄,而不是$TMPDIR或/tmp;多個選項指定多個目錄

      -u, --unique

            和“-c”一起使用,檢查是否有嚴格的排序;如果沒有-c,則隻輸出相同運作的第一個。

      -z, --zero-terminated

            結束行為0位元組,而不是換行符

3、執行個體

1)直接排序

      [root@192 weijie]# cat 1.c

      1K

      1M

      1G

      1T

      [root@192 weijie]# sort 1.c         //直接對比字元排序

2)按照可讀的機關來排序 

      [root@192 weijie]# sort -h 1.c       //檔案的内容按照機關排序,這些很明顯是記憶體大小機關

3)按照數字排序

      [root@192 weijie]# cat 2.c

      123

      23

      212

      [root@192 weijie]# sort 2.c         //預設排序,按照字元逐個比較

      [root@192 weijie]# sort -n 2.c     //把内容當做數字排序

繼續閱讀