欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

关于Linux操作系统下终端乱码的完美解决方法

程序员文章站 2023-09-03 14:42:55
初入linux的程序员们,经常会受到乱码的问候。可谓“始乱终弃”。因为乱码,并且最终放弃了linux的不在少数。好吧,言归正传,先看看各类乱码是怎么形成的。 中文字符乱码...

初入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.pycm?{?鯡c@sdzdzds(ccs:d}}x'||jo|g|||}}qwds(nii(ii(tatbtn(rrr((tfibo.pytfibsccsig}d}}x0||jo"|i||||}}qw|s(nii(ii(tresultrrrtappend(rrrr((rtfib2 sn(rr(rr((rt?s oracle@linux-suse:~> vt102vt102-bash: vt102vt102: command not foundoracle@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即可。

上面就是小编为大家带来的关于linux操作系统下终端乱码的完美解决方法全部内容了,希望大家多多支持~