我在 linux 中有一個文本檔案,如下所示:
H-988 -0.5418829321861267 no
H-989 -0.5033702254295349 yes
H-990 -1.1516857147216797 hi
H-99 -0.5005123019218445 hello
我想根據連字符后面的數字對這個檔案進行排序。所以順序應該是:
H-99 -0.5005123019218445 hello
H-988 -0.5418829321861267 no
H-989 -0.5033702254295349 yes
H-990 -1.1516857147216797 hi
我嘗試了 grepsort命令,但沒有用。例如,它把 95 放在 949 之后而不是之前 99 和 990 與提供的示例相同
uj5u.com熱心網友回復:
你應該按數字排序,
sort --numeric-sort --field-separator "-" --key 2 some.txt
或更短的版本
sort -n -t "-" -k 2 some.txt
uj5u.com熱心網友回復:
如果第一個欄位在數字之前總是只有兩個字符,您可以跳過它們:
sort -k1.3,1n ip.txt
-k1.3告訴僅從第三個字符sort開始考慮欄位(1此處)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/362886.html
