Ubuntu 排序命令,不适用于不同的编码

Ubuntu Sort Command, does not work with diffrent encodings

我有一份文件,我想按以下方式对其进行排序: 排序 -k1,1 -k2,2n -k4,4n

如果文件不包含 ü,ä,ö 之类的东西或它能用的东西。但是如果这样排序就不对了。

文件为 Ascii

所以在文档排序之前:它是这样的

于伯塞茨 贝多芬 书目

排序后:

贝多芬 übersetzt 书目

所以它很糟糕,实际上排序命令忽略了 ü,并认为 bersezt 在 bibliothek 之前。

你知道我该如何处理吗?

提前致谢

我找到了如何处理 ü,ö,ä 等特殊字符的方法。 如果有人遇到类似问题,我是这样解决的:

sed -i -r -e 'y/äöüÄÖÜß/{|}¢µ¼¥/' path/to/file

LC_ALL=C sort -f path/to/file > path/to/file-sorted

sed -i -r -e 'y/{|}¢µ¼¥/äöüÄÖÜß/' path/to/file-sorted