萬盛學電腦網

 萬盛學電腦網 >> 服務器教程 >> linux sort命令參數及用法詳解

linux sort命令參數及用法詳解

   功能說明:將文本文件內容加以排序。

  語  法:sort [-bcdfimMnr][-o<輸出文件>][-t<分隔字符>][+<起始欄位>-<結束欄位>][--help][--verison][文件]

  補充說明:sort可針對文本文件的內容,以行為單位來排序。

  參  數:

  -b 忽略每行前面開始出的空格字符。

  -c 檢查文件是否已經按照順序排序。

  -d 排序時,處理英文字母、數字及空格字符外,忽略其他的字符。

  -f 排序時,將小寫字母視為大寫字母。

  -i 排序時,除了040至176之間的ASCII字符外,忽略其他的字符。

  -m 將幾個排序好的文件進行合並。

  -M 將前面3個字母依照月份的縮寫進行排序。

  -n 依照數值的大小排序。

  -o<輸出文件> 將排序後的結果存入指定的文件。

  -r 以相反的順序來排序。

  -t<分隔字符> 指定排序時所用的欄位分隔字符。

  +<起始欄位>-<結束欄位> 以指定的欄位來排序,范圍由起始欄位到結束欄位的前一欄位。

  --help 顯示幫助。

  --version 顯示版本信息

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  下面通過幾個例子來講述Sort的使用。

  用Sort命令對text文件中各行排序後輸出其結果。請注意,在原文件的第二、三行上的第一個單詞完全相同,該命令將從它們的第二個單詞vegetables與fruit的首字符處繼續進行比較。

  $ cat text

  vegetable soup

  fresh vegetables

  fresh fruit

  lowfat milk

  $ Sort text

  fresh fruit

  fresh vegetables

  lowfat milk

  vegetable soup

  用戶可以保存排序後的文件內容,或把排序後的文件內容輸出至打印機。下例中用戶把排序後的文件內容保存到名為result的文件中。

  $ Sort text>result

  以第2個字段作為排序關鍵字對文件example的內容進行排序。

  $ Sort +1-2 example

  對於file1和file2文件內容反向排序,結果放在outfile中,利用第2個字段的第一個字符作為排序關鍵字。

  $ Sort -r -o outfile +1.0 -1.1 example

  Sort排序常用於在管道中與其他命令連用,組合完成比較復雜的功能,如利用管道將當前工作目錄中的文件送給Sort進行排序,排序關鍵字是第6個至第8個字段。

  $ ls - l | Sort +5 - 7

  $ ps -e -o " comm pid time"|Sort -d //按照command的首字母的字母順序排序

  Sort命令也可以對標准輸入進行操作。例如,如果您想把幾個文件文本行合並,並對合並後的文本行進行排序,您可以首先用命令cat把多個文件合並,然後用管道操作把合並後的文本行輸入給命令Sort,Sort命令將輸出這些合並及排序後的文本行。在下面的例子中,文件veglist與文件 fruitlist的文本行經過合並與排序後被保存到文件clist中。

  $ cat veglist fruitlist | Sort > clist

copyright © 萬盛學電腦網 all rights reserved