玩转linux的编码
在公司通过securecrt来链接服务器进行开发,开发的时候发现中文出现乱码。后来看了一下系统的编码是utf-8的,然后改了securecrt的配置,将编码改成utf-8,然后发现中文就不出现乱码了。
后来发现公司的基本上所有的文件都是GBK的,用head等命令看的时候,中文还是出现乱码。网上找了一下,原来可以修改系统的编码的。在当前的bash中运行一下命令:
export LANG=zh_CN.GBK
然后系统的编码就变成了GBK了,系统的提示语言也变成了中文,如果系统提示语言显示乱码的话,说明系统没有装中文语言包,那可以将编码设成en_US.GBK。为了方便,不用每次开一个bash之后就运行一次export LANG=zh_CN.GBK,我们可以将这条shell命令加入到.bashrc下。这样系统的编码问题就解决了。
但是vim的编码还是一个问题,解决vim的编码问题,可以修改.vimrc文件。加入一下语句:
set fileencoding=gbk
set fileencodings=gbk,utf-8,gb18030
这样vim的编码问题也可以得到搞定。
有的时候,我们想临时改变一下编码,比如一个文件是utf-8的,我们向head看一下其中的内容。那如果我们用export去改变编码的话,一会儿还要改回来,用起来就稍微有点麻烦。其实我们可以使用luit这个工具,我可以用luit –encoding GBK head –100 s.txt。
有的童鞋可能在用screen,也有可能遇到编码的问题,那可以修改.screenrc文件,向其中添加一下语句:
defencoding GBK
encoding UTF-8 GBK
编码问题就跟大家聊到这了,本人用linux的时间不是是很久,大家有没有其他的补充呢?欢迎大家留言进行补充。
![Creative Commons License](http://i.creativecommons.org/l/by/2.5/cn/88x31.png)
本文基于署名 2.5 中国大陆许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名小橋流水(包含链接)。如您有任何疑问或者授权方面的协商,请给我发邮件。