在 bash 中按字典顺序排序

val*_*lya 7 bash sorting

我希望数据按照 Python 排序的方式排序,比较 ASCII 值。但是sort命令似乎太聪明了。看一看。由于'.' < '9'

$ sort
.
9
^D
.
9
Run Code Online (Sandbox Code Playgroud)

和 :

$ sort
1.
19
^D
1.
19
Run Code Online (Sandbox Code Playgroud)

这两个还好。但出于某种原因,如果我只是在末尾添加字符:

$ sort
1.c
19z
^D
19z
1.c
Run Code Online (Sandbox Code Playgroud)

可能它试图将其解读为数字或其他东西。我不想那样,我希望它对比较每个字符的 ASCII 值的东西进行排序。在 中找不到这样的选项man,有什么想法吗?

cho*_*oba 9

所描述的行为可能是语言环境的影响。关闭排序的区域设置:

$ echo '1.c
19z ' | LC_ALL=C sort
1.c
19z
Run Code Online (Sandbox Code Playgroud)