温馨提示×

linux securecrt为何乱码了

小樊
43
2026-09-12 14:02:42
栏目: 智能运维

在 Linux 下使用 SecureCRT 出现乱码,通常不是 Linux 本身的问题,而是 SecureCRT 的字符编码设置Linux 系统的语言环境不一致 导致的。下面按常见原因+解决办法说明:


一、最常见原因:编码不一致

1️⃣ SecureCRT 编码不是 UTF-8

解决方法:

  1. 打开 SecureCRT
  2. 菜单:Options(选项)Session Options(会话选项)
  3. 找到:Terminal(终端)Appearance(外观)
  4. Character encoding(字符编码) 设置为:
    UTF-8
    
  5. 断开重连

✅ 这是 90% 乱码问题的根源


2️⃣ Linux 系统语言环境不是 UTF-8

在 Linux 终端执行:

locale

如果看到类似:

LANG=C
LC_CTYPE="POSIX"

说明不是 UTF-8。

解决方法(临时):

export LANG=zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8

永久生效(推荐):

sudo localectl set-locale LANG=zh_CN.UTF-8

或修改:

/etc/locale.conf
LANG=zh_CN.UTF-8

二、SecureCRT 字体不支持中文

即使编码对了,字体不对也会乱码。

解决:

  • Session Options → Terminal → Appearance
  • Font(字体)选择:
    • DejaVu Sans Mono
    • Courier New
    • 或任意支持中文的等宽字体

三、vim / less 里乱码

vim 乱码

vim ~/.vimrc

加入:

set encoding=utf-8
set fileencodings=utf-8,gbk,gb18030

less 乱码

export LESSCHARSET=utf-8

四、rz / sz 传输文件乱码

  • 文件名乱码:SecureCRT 编码必须 UTF-8
  • 文件内容乱码:文件本身是 GBK,用 iconv 转换:
iconv -f gbk -t utf-8 file.txt > new.txt

五、快速自查清单 ✅

检查项 正确值
SecureCRT 编码 UTF-8
Linux LANG *.UTF-8
字体 支持中文
文件编码 UTF-8

如果你愿意,可以告诉我:

  • SecureCRT 版本
  • Linux 发行版(CentOS / Ubuntu / 麒麟等)
  • 乱码出现的位置(登录界面 / vim / 日志 / 文件名)

我可以给你精确配置方案

0