最新消息:

工具第4款:Ubuntu服务器GBK文件乱码-新

基本工具 杨红伟 629浏览 0评论

先说点儿废话:这一年来,由于各种大大小小的原因,博客没有写了多少,今年准备开始好好写一写了!最近的状态也不错!

今天用阿里云ubuntu服务器时,又遇到了乱码的问题。其实这个乱码的问题,以前碰到过多次,可每次都用了好长时间解决。今天差不多用了将近一个小时吧,其实细细想来,如果会认真的用,用不了半分钟全搞定。因此,今天写这篇文章!

一:遇到乱码先认真分析

在Linux服务器上(Ubuntu就是Linux,有些人居然不知道),乱码无非是三种问题

1、服务器本身就不支持中文,无论中文UTF8还是GBK(这个现在一般不用考虑,据说除非你使用外国的服务器,忽略不计)
2、shell编码设置的问题,我用xshell(具体shell百度找)
3、vim编辑器是否支持GBK(具体编辑器百度查找吧)
4、转码(Windows下用Notepad++,Linux下用iconv)

二:相关配置,第一步分析完了,这一步来设置,分为两步

1、设备xshell编码(文件-属性-终端-编码-UTF8),具体如下图

这时我们在终端就可以建立中文文件夹了,如图:

2、设置vim编辑器支持GBK

打开vim的配置文件,位置在/home/username/.vimrc或者/etc/vim/vimrc,我修改的是后者,

在其中加入

set fileencodings=utf-8,gb2312,gbk,gb18030
set termencoding=utf-8
set encoding=prc

如图:

保存退出,此时vim就能正确显示中文了。

以前我们打开文件是这样的乱码

正常显示就是这个样子的,是不是感觉很舒服呢!!!

3、转码

建议利用covmv进行转码,百度方法很多参数,最实用就这么一句

convmv -f GBK -t UTF-8 --notest *.mp3

4、繁体字

我曾经遇到繁体字和简体字在一起的乱码,我去!我用了五六个小时都没有解决,网上各种方法我都用遍了,还没有解决。最后用 nano index.html 这种方法一看,是正常的!我一下崩溃了!

用排除法,一看段落里有繁体字。

于是我们在vim中转换就可以看到正常的了,如下:

set termencoding=cp936

原因是这里:

euc-cn是GB2312的别名,不支持繁体汉字。cp936是GBK的别名,是GB2312的超集,可以支持繁体汉字。

更详细的原因请看这两篇文章:

《VIM中文乱码原理详解及终极解决方案[经典]》  http://blog.chinaunix.net/uid-21843387-id-106001.html

《 ubuntu下的vim和gvim汉字(中文)乱码解决方法 》 http://blog.csdn.net/feiniao1221/article/details/7000868

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址