2014-10-22 71 views
0

我有一個文件,我希望它按照字母順序排序:排序-n不起作用

cat file 
peptide9 
peptide89 
peptide99 
peptide79 
peptide4 
peptide58 
peptide990 

,當我使用

cat file | sort -n 

結果是:

peptide4 
peptide58 
peptide79 
peptide89 
peptide9 
peptide99 
peptide990 

我嘗試了不同的選項,但結果總是一樣的!
我想輸出是

peptide4 
peptide9 
peptide58 
peptide79 
peptide89 
peptide99 
peptide990 

回答

4

可以使用--version-sort-V):

$> sort --version-sort t 
peptide4 
peptide9 
peptide58 
peptide79 
peptide89 
peptide99 
peptide990 

另一種方法是, 「使用 'E' 作爲分隔符,3列進行排序的編號」 :

$> sort -te -k3 -n t 
peptide4 
peptide9 
peptide58 
peptide79 
peptide89 
peptide99 
peptide990 
+0

請注意,該版本不適用於負數 – 2014-10-22 10:35:06

3

排序數字,與在第1場 的第8個字符的按鍵首發:

sort -n -k1.8 file 

排序與該鍵,把它當作一個數字,而不是其他領域 (有用的,如果你有其他字段):

sort -k1.8n file 

info sort瞭解更多詳情。