【linux】--- 高階命令列文字處理工具 sort
阿新 • • 發佈:2018-12-09
二、sort命令
sort 命令對 File 引數指定的檔案中的行排序,並將結果寫到標準輸出。如果 File 引數指定多個檔案,那麼 sort 命令將這些檔案連線起來,並當作一個檔案進行排序。
選項與引數:
-f :忽略大小寫的差異,例如 A 與 a 視為編碼相同; -b :忽略最前面的空格符部分; -M :以月份的名字來排序,例如 JAN, DEC 等等的排序方法; -n :使用『純數字』進行排序(預設是以文字型態來排序的); -r :反向排序; -u :就是 uniq ,相同的資料中,僅出現一行代表; -t :分隔符,預設是用 [tab] 鍵來分隔; -k :以那個區間 (field) 來進行排序的意思
cat /etc/passwd | sort
/etc/passwd 內容是以 : 來分隔的,我想以第二欄來排序
cat /etc/passwd |sort -t ' ' -k 2
sort -r 反向排序
cat /etc/passwd |sort -t ':' -k 3 -n
cat /etc/passwd | sort -t ':' -k 3.1,3.2
cat /etc/passwd | sort -t ':' -k 3.1,3.2 -k 1r
如果要對/etc/passwd,先以第三個域的第1個字元到第2個字元進行正向排序,再基於第一個域進行反向排序。
sort -u
或者 sort | uniq
sort | uniq -c 可以統計次數