oracle export utf-8,Linux操作系统下终端乱码的终极解决方案 export LANG=zh_CN.UTF-8 export LANG=en_US...

在使用linux的终端工具SecureCRT的时候,每次提交SVN想输入中文日志的时候总是输不了中文。

svn ci -m "" 这时候两个引号之间就是没有办法输入中文。

后来跟其他同学请教,找了一个终极解决方案

要先保证SecureCRT是UTF8格式的,设置:选项-会话选项-终端-外观的字符编码,选择utf-8

首先,在/home/yourname下面建立一个文件.vimrc,然后这个文件中写入如下代码

1 set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936

2 set termencoding=utf-8

3 set encoding=utf-8

4 set fileencodings=ucs-bom,utf-8,cp936

5 set fileencoding=utf-8

6 set nohls

7 set nu

8 filetype on

9 syntax on

10 set tabstop=4

11 set shiftwidth=4

12 set autoindent

13 set smartindent

14 set showmatch

15 set ruler

16

上代码的大概含义就是终端支持UTF8,也就是可以支持中文。

然后再命令行执行如下命令

[yourname@root]$ export LANG=zh_CN.UTF-8

再试试

[yourname@root]$ svn ci -m "提交中文提示"

如果想SSH客户端启动的时候,就执行export LANG=zh_CN.UTF-8,需要在/home/yourname寻找.bash_profile文件,然后用vim修改之

14:14 [x334@web2.dev.yourname]$ vim .bash_profile

1 # .bash_profile

2

3 # Get the aliases and functions

4 if [ -f ~/.bashrc ]; then

5     . ~/.bashrc

6 fi

7

8 # User specific environment and startup programs

9

10 PATH=$PATH:$HOME/bin

11

12 export PATH

13 unset USERNAME

14 export LANG=zh_CN.UTF-8

保存后,重新启动SSH客户端,这样以后每次启动客户端的时候就自动执行export LANG=zh_CN.UTF-8。

大功告成鸟。

Linux中使用export命令设置环境变量

下面复制一篇网上的文章

export LANG=zh_CN.UTF-8

export LANG=en_US

===============================================================================================

===============================================================================================

初入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即可

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值