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

Linux系统遇到SecureCRT连接到linux服务器之后出现乱码问题

程序员文章站 2022-09-11 17:12:49
遇到SecureCRT连接到linux服务器之后出现乱码,那么我们要怎么解决这个问题,方法有多种,遇到类似情况的朋友可以看看... 15-05-29...

  linux系统中有时会用户们会遇到securecrt连接到linux服务器之后出现乱码,那么我们要怎么解决这个问题呢?其实方法并不难,现在就和小编一起来看看吧。

Linux系统遇到SecureCRT连接到linux服务器之后出现乱码问题

  问题:中文字符显示出来成了乱码(当前系统编码为utf-8,crt编码为utf-8)

  原则:保持文件、系统、crt三者的编码格式一致即可

  解决方法:

  方法1:

  a、查看文件的编码格式

  在vim中可以直接查看文件编码

  :set fileencoding

  fileencoding=latin1

  使用命令查看文件编码

  # file mysql2.txt

  mysql2.txt: iso-8859 text, with crlf line terminators

  iso-8859 又称 latin或“西欧语言”

  b、查看linux系统使用的编码是什么格式,将系统的编辑修改成en_us(如果看到文件编辑为utf-8或gbk等其他的,这里改成utf-8或gbk等即可)

  # lang=en_us

  # echo $lang

  en_us

  c、 修改并修改secure crt的设置(如果看到文件编辑为utf-8或gbk等其他的,这里改成utf-8或gbk等即可)

  右击–选择session的属性进行查看,修改成default

  方法2:

  a、查看文件的编码格式

  在vim中可以直接查看文件编码

  :set fileencoding

  fileencoding=latin1

  使用命令查看文件编码

  # file mysql2.txt

  mysql2.txt: iso-8859 text, with crlf line terminators

  iso-8859 又称 latin或“西欧语言”

  由于latin1 是一种非常宽松的编码方式,任何一种编码方式得到的文本,用 latin1 进行解码,都不会发生解码失败——当然,解码得到的结果自然也就是理所当然的“乱码”。

  让系统能尽量识别文件正确的编码(编辑~/.vimrc文件):

  # vim ~/.vimrc

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

  set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1

  设置完毕后,就可以让vim自动识别文件编码(可以自动识别utf-8或者gbk编码的文件),其实就是依照 fileencodings提供的编码列表尝试,如果没有找到合适的编码,就用latin-1(ascii)编码打开。

  再次查看编码

  :set fileencoding

  fileencoding=cp936

  这时,应该可以看到vim的时候能正常显示中文了,但是cat的时候还是不行

  b、给文件转码,将cp938格式转化为utf-8(直接从latin1转的时候不会报错,但转出来会还是乱的)

  # iconv -f cp936 -t utf-8 mysql2.txt -o mysql8.txt

  -f : from

  -t : to

  -o: output

  c、查看linux系统使用的编码是什么格式,将系统的编辑修改成en_us.utf-8

  # lang=en_us.utf-8

  # echo $lang

  en_us.utf-8

  d、 修改并修改secure crt的设置

  右击–选择session的属性进行查看,修改成utf-8

  如果你在使用linux电脑时,也遇到了这个问题,那么就用这种方法让你的securecrt顺利连接到linux服务器吧。