Answers:
你需要告诉sort -n排序后的部分=:
sort -t = -k 2n
-k2n什么?这与数字排序有关吗?谢谢。
-k定义一个排序键。有关详细信息,请参见手册页。-k2n定义一个排序键,该键从第二个字段开始,到行尾为止,并使其成为数字排序键。
使用排序:
sort -n file1 > file2
-n,--numeric-sort
根据字符串数值进行比较
sort -g file1 > file 2
-g,--general-numeric-sort
sort -n因为它们不是以数字开头。对它们进行排序的原因是对具有相同排名的行进行的最后一次全行排序(按词法,而不是数字)。那会"$lvl=17"在之前排序"$lvl=2"。
-n并且-g是多余这里输入不是数值。因此,此答案具有误导性,因此令人不快(也请注意,-g且long选项是GNU特定的)。
-n处在于它不限于十进制整数。"$lvl=17"在进行"$lvl=2"最后一次排序时,仍会先进行排序。
sort -n是您要使用的。它在对数字进行排序时进行排序。sort -k 2 -n file1
sort在File1上运行纯Unix ,并且没有任何选项时,我得到了File2。你在做什么不同?您在这个问题上遗漏了什么?