快速业务通道

Linux系统下终端乱码终极解决方案

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-08

初入linux的程序员们,经常会受到乱码的问候.可谓“始乱终弃”.乱码,并且最终放弃了linux的不在少数.好吧,言归正传,先看看各类乱码是怎么形成的.

中文字符乱码

这种情况一般是安装了中文控制端,但没有启用中文应用造成的.只需要启动相应软件即可,如zhcon.或者是启用了相应软件,但字符集不对,需设置相应字符集,例如export LANG=zh_CN.UTF-8

ORACLE安装界面乱码

虽说ORACLE支持多国语言,会根据环境变量自动选择字符集,但中文安装好像还有问题,不过10.2以后的版本好像没有该问题了,具体可以执行命令export LANG=en_US来设置为英文字符集环境

英文字符乱码

一般该字符乱码多出现在cat了二进制的文件时,二进制文件中多有控制码,会导致终端界面乱码,通常解决方法是用reset终端复位命令解决问题

其他伪终端乱码

有时是通过SSH进入远程LINUX服务器时,cat一个core文件,并且用reset命令都不能成功,怎么办?很简单,看以下试验,cat一个python的编译文件

oracle@linux-suse:~> cat fibo.pyc

m?

{?鯡c@sd

Zd

ZdS(cCs:d}}x''||jo|G|||}}qWdS(Nii(ii(tatbtn(RRR((tfibo.pytfibs



cCsIg}d}}x0||jo"|i||||}}qW|S(Nii(ii(tresultRRRtappend(RRRR((Rtfib2 s

N(RR(RR((Rt?s oracle@linux-suse:~> VT102VT102

-bash: VT102VT102: command not found

oracle@linux-suse:~>

在SSH终端上看到是的乱码,提示符都是乱的,可以用以下命令恢复

oracle@linux-suse:~> tput sgr0

乱码问题产生的原因是SSH的问题,在其他终端下,cat用样一个文件,不会产生乱码,于是试验乱码产生的原因

oracle@linux-suse:~> ^N

只要用ctrl v,ctrl n就使用屏幕乱码,当然恢复后再试验

oracle@linux-suse:~> echo -e ''xe''

屏幕再次乱码,好,再恢复

oracle@linux-suse:~> echo -e ''xf''

以上是需要盲打的,屏上看到的是乱码,最终问题产生的原因是十六进制字符E产生的,解决也很简单,十六进制字符F即可.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号