sort#

sort 是包含在 GNU Coreutils 內的文字排序工具。

sort 是 Linux 系統中用於將文字檔案內容依據特定順序(字典順序、數值大小等)重新排列的指令。它可以讀取檔案或標準輸入,並將排序後的結果輸出。在處理大量數據清單、日誌分析或與 uniq 指令搭配使用時非常強大。

Install#

$ sudo apt install coreutils

Setting in up#


Operate#

sort [options] [file]

參數範例指令說明
-nsort -n file數值排序。依照數字大小而非字母順序排列。
-rsort -r file逆向排序。將結果由大到小或以相反順序排列。
-usort -u file唯一值。排序並刪除重複的行(效果類似 sort + uniq)。
-ksort -k 2 file指定欄位。依據指定的欄位進行排序。
-tsort -t ',' file分隔符號。指定欄位分隔字元(預設為空白)。
-osort -o out.txt in.txt輸出至檔案。將排序結果寫入檔案,可直接寫回原檔。
-Msort -M file月份排序。依據月份縮寫(JAN, FEB…)進行排序。
-fsort -f file忽略大小寫。將大小寫視為相同。
格式說明範例
sort基礎排序sort list.txt
sort -rn數值逆向排序du -sh * | sort -rn (由大到小排列檔案大小)
sort -t: -k3n指定欄位數值排序sort -t: -k3n /etc/passwd
sort -u排序並去重sort -u email_list.txt

Reference#

Official docs: