为什么 gnu `sort` 忽略非 alpha 字符?

为什么 gnu `sort` 忽略非 alpha 字符?

我原以为@会被排序在一起,但它们与非@版本交错。 sort 是否有 ASCII 排序选项?我在手册页中没有看到明显的内容。

$ echo '@x
> @y
> @z
> x
> y
> z' | sort
x
@x
y
@y
z
@z

答案1

这取决于区域设置。男人分类包括:

*** WARNING *** The locale specified by the environment affects sort order.  
Set LC_ALL=C to get the traditional sort order that uses native byte values.

您可以仅针对一个命令进行设置,例如:

... | LC_ALL=C sort ...

相关内容