sort [-bcdfimMnr][-o<輸出文件>][-t<分隔字符>][+<起始欄位>-<結束欄位>][–help][–verison][文件]
-b:忽略每行前面開始的空格字符,空格數量不固定時,該選項幾乎是必須要使用的("-n"選項隱含該選項,測試發現都隱含)
-c:檢查文件是否已經按照順序排序,如未排序,會提示從哪一行開始亂序
-C:類似於"-c",只不過不輸出任何診斷信息。可以通過退出狀態碼1判斷出文件未排序
-d:只處理英文字母、數字及空格,忽略其他的字符
-f:將小寫字母視爲大寫字母
-h:使用易讀性數字(例如:2K、1G)
-i:除了040至176之間的ASCII字符外(八進制0-177),忽略其他的字符(忽略無法打印的字符如退格/換頁鍵/回車)
-k:以哪個區間 (field) 來進行排序
-m:將幾個排序好的文件進行合併,只是單純合併,不做排序
-M:將前面3個字母依照月份的縮寫進行排序
-n:依照數值的大小排序
-o<輸出文件>:將排序後的結果存入指定的文件
-r:降序
-u:忽略相同行
-t<分隔字符>:指定分隔符,默認的分隔符爲空白字符和非空白字符之間的空字符
Example:
cat a.txt b.txt | sort -k1.1,1.3 -k1.4,1.6n
...
bbb97 hadoop
bbb98 hadoop
bbb99 hadoop
bbb100 hadoop
ccc1 hadoop
ccc2 hadoop
ccc3 hadoop
ccc4 hadoop
ccc5 hadoop
ccc6 hadoop
ccc7 hadoop
ccc8 hadoop
ccc9 hadoop
ccc10 hadoop
ccc11 hadoop
...