我有一个文件,我希望按字母顺序排序:
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
答案 0 :(得分: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
答案 1 :(得分:3)
按数字排序,键从第1个字符的第8个字符开始 字段:
sort -n -k1.8 file
使用该键排序,将其视为数字,而不是其他字段 (如果您拥有其他字段,则非常有用):
sort -k1.8n file
info sort
了解更多详情。