背景
文件名乱码在Windows下非常少见,但是Linux下屡见不鲜。咱们先说结论,这并不是Linux不如Windows,而是因为Linux经常作为服务器操作系统,需要通过SSH进行远程连接管理,这个步骤非常容易产生乱码。为什么用SSH会产生乱码?因为有两个地方编码可能会冲突:
说实话,这种理论如果空对空的口头解释,我敢保证肯定能把用户听糊涂了,好在我们有DESK倚天剑,可以边做实验边理解。
Linux乱码的前生今世
为了帮助大家理解,可以按照我如下的步骤做一个测试。测试之前找一个linux操作系统,先创建一个全新测试用户,用这个测试用户通过SSH远程登录到服务器上。登录成功后,执行一下locale语句,获得当前Session的编码,这个编码就是前面说的操作系统编码,然后把DESK终端编码调整和操作系统相同,如下图所示:
调整完成之后,创建一个包含中文的文件夹“你好GB”。这时候使用ls进行查看的时候,目录显示正常,不会乱码,如下图:
但是,如果我们启动一个新窗口,新窗口上的编码方式和刚才设置的不一样,就会产生乱码,如下图:
看到这里朋友差不多就明白了,总结来说,操作系统编码和终端工具上的编码如果不一致,就会产生乱码。如果你的系统上已经产生了乱码,如何才能正常显示呢?尝试如下两个步骤:
- 窗口中运行 export LANG=zh_CN.GBK 命令,然后把DESK终端编码也修改成GBK
- 窗口中运行 export LANG=zh_CN.UTF-8 命令,然后把DESK终端编码也修改成UTF-8
如果使用步骤1仍然乱码,就切换到步骤2,我相信两个步骤中有一个大概率能解决您的乱码。
写到最后
系统乱码对于新手来说非常难以理解,好在DESK倚天剑支持在线切换,不用关闭当前窗口,也不用切换到其他界面。这点其实比大多数的终端工具都好,以putty为例,切换一次真不容易啊,不服的人可以试试,如下图所示:
总之,DESK倚天剑的编码切换,不但用起来非常方便,而且能帮助大家理解乱码原因。祝大家用剑顺利,远离乱码!!
打赏本号任何文章累计60元,DBCS屠龙刀/DESK倚天剑任选累计100元,DBCS屠龙刀和DESK倚天剑,双手献上介绍:刀剑生辉,DESKUI三兄弟踏信创烽烟大步走来