【发布时间】:2011-08-17 09:14:23
【问题描述】:
我在 Mac OS X 和 Ubuntu Linux 上都使用sort,我观察到大写/小写比较的不同处理方式。
在 Mac OS X 上,sort (GNU coreutils) 5.93 给出了我期望的行为:
$ sort <<EOF
> Aa
> aa
> Ab
> ab
> EOF
Aa
Ab
aa
ab
在 Ubuntu 上,sort (GNU coreutils) 8.5 似乎忽略了大小写:
$ sort <<EOF
> Aa
> aa
> Ab
> ab
> EOF
aa
Aa
ab
Ab
有没有办法禁用这种行为?我需要区分大小写的排序。
我尝试将LOCALE 更改为C,但没有任何改变。
或者,是否有任何其他简单的实用程序可以对大文件进行排序,将每一行视为一个字节字符串?
【问题讨论】:
-
有趣。我想在 Perl 或 Python 中编写您想要的
sort需要 5 行代码,所以如果您可以接受这样的解决方案,也许有人可以将其作为答案。 -
UNIX
sort进行外部排序,我需要对不适合 RAM 的文件进行排序。我不认为你可以在 5 行 Perl 中做到这一点 :) -
哦,这就是您所说的“大”。很高兴把它说清楚。