Sort

對多列進行排序,第二列按數字順序排序

  • January 24, 2018

文件:namelist.txt

Emily 0
Emily 1
Emily 5
Joe 0
Joe 10
Joe 5
Joe 6

這是我執行的命令:

cat nameslist.txt | sort -k1 -k2

結果:

Emily 0
Emily 1
Emily 5
Joe 0
Joe 10
Joe 5
Joe 6

看起來它是按第一個數字排序的,但我怎樣才能讓第二列按數字排序?我想要的結果是:

Emily 0
Emily 1
Emily 5
Joe 0
Joe 5
Joe 6
Joe 10

使用-n選項按數字排序:

sort -k1,1 -k2n nameslist.txt

無需使用cat讀取輸入文件。 sort無需其他流程即可做到這一點。

-k1,1表示法將第一個排序鍵的開始和停止限制設置為第一個欄位。

引用自:https://unix.stackexchange.com/questions/419424