为什么排序 -n 是这样排序的>

  • 本文关键字:排序 linux bash sorting
  • 更新时间 :
  • 英文 :


我有一个包含以下行的文件:

4/3
4/7
3/5
3/6
2/4

使用不带任何参数的排序进行排序时,它会像您期望的那样排列行。使用 sort -n 时,输出如下:

3/5
3/6
4/3
4/7
2/4

我不明白为什么会这样。

重现它的一种方法是在每行前面添加零宽度空格,除了 2/4

U+200B ZERO WIDTH SPACE [Cf]

以下是包含上述排列的十六进制字符串:

% echo "e2808b342f330ae2808b342f370ae2808b332f350ae2808b332f360a322f340a" 
  | xxd -r -p | sort -n
3/5
3/6
4/3
4/7
2/4

我怀疑是这种情况,但也许还有其他不可打印的字符,您可以尝试使用十六进制转储:

xxd -p < my_file

相关内容

  • 没有找到相关文章

最新更新