中文编码不同对 Linux 中的 sort 命令的影响
linux中sort命令是非常常用的命令,平时一般用英文或数字key来排序,今天遇到了中文汉字作为key,排序输出的结果和自己预期的结果不一样,折腾半天,发现是与文件的编码有关(通过Lang这个语系变量设置可以得到正常的排序),下面贴出代码供遇到同样问题的人参考。
root@linux:~$ vim input
今天 今天
你好 你好
今天 今天
root@linux:~$ LANG=en_US.UTF-8; sort -t' ' -k1,2 input > output
root@linux:~$ vim output
今天 今天
你好 你好
今天 今天
root@linux:~$ LANG=GBK; sort -t' ' -k1,2 input > output
root@linux:~$ vim output
今天 今天
今天 今天
你好 你好