我希望数据按照 Python 排序的方式进行排序,比较 ASCII 值。但sort
命令似乎太聪明了。看一看。因为'.' < '9'
:
$ sort
.
9
^D
.
9
和 :
$ sort
1.
19
^D
1.
19
这两个都很好。但出于某种原因,如果我在末尾添加字符:
$ sort
1.c
19z
^D
19z
1.c
它可能试图将其读为数字或其他东西。我不想这样,我希望它通过比较每个字符的 ASCII 值来排序。在 中找不到这样的选项man
,有什么想法吗?
答案1
所描述的行为可能是区域设置的影响。关闭排序的区域设置:
$ echo '1.c
19z ' | LC_ALL=C sort
1.c
19z