Skip to content

sort處理文件

sort

可以用於依行排序資料,由檔案開頭小 => 檔案結尾大
並且可以依參數進行指定排序

參數介紹

-n

依數值排序 (否則依字典排序)

-r

reverse,檔案開頭大 => 檔案結尾小

-k -t

依欄位排序
-t可以指定分隔符,預設為空白、逗號… -k可以指定分隔後的欄位 EX: file.txt

100,1,2
5,6,7
10,3,4
1,1,1
  • sort -t “,” -k3 -n file.txt
1,1,1
100,1,2
10,3,4
5,6,7

依”,“分割後的第三欄排序,也就是 1 2 4 7

  • sort -t “,” -k2,1 -k3 -n -r sort.txt
5,6,7
10,3,4
100,1,2
1,1,1

依”,“分割後的第二欄為primary key 排序,若第二欄比較相同,再依第三欄排序

與uniq 合用

uniq會將鄰近一樣的行合併 所以在使用前需先用sort排好
比如 cat file.txt | sort | uniq