关于Linux服务器上文件中文乱码问题

     开发经常会找运维文件出现乱码,大部分就是中文乱码,遇到这种问题作为运维人员需要进行各种测试和验证,才能确定哪里的字符集编码不对。可能操作终端(如SecureCRT),操作系统,也可能文件内容编码。

一、关于几种常见字符集编码定义

1.定义

1)UTF-8:国际通用字库,支持现今世界各种不同语言。
     其中UTF8属于编码方式,en_US.UTF-8、zh_CN.UTF-8属于UTF-8编码方式下不同的字符集。
     如果你的LANG环境变量是en_US.UTF-8,那么系统的菜单、程序的工具栏语言、输入法默认语言就都是英文的。
     如果你的LANG环境变量是zh_CN.UTF-8,那么系统的菜单、程序的工具栏语言、输入法默认语言就都是中文的。
2)gb2312 :是国标,是中国的字库,里面仅涵盖了汉字和一些常用外文
字库规模:  UTF-8(字全) > gb2312(只有汉字)

二、一个典型场景

1. 场景说明

某文件编码格式为GB2312, 操作系统默认的编码为en_US.UTF8, 访问终端默认字符集编码为UTF8.
分析:
文件编码为GBK编码方式,而客户端及操作系统都UFT8编码,所以两种不同编码方式如果不进行
编码转化对于中文字符,由于占用字节数及编码方式不一样,可能导致中文乱码
解决思路:
1)把客户端和操作系统编码改成GBK编码字符集
2)把文件内容及文件编码转为UTF8编码方式
解决方案:
本场景解决方案采用第一种。具体方式就是客户端字符编码设成default,操作系统执行export LANG=zh_CN.gb2312
问题解决。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

R_水手

感谢你对创作者的支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值