在 Linux 下使用 SecureCRT 连接远程服务器时,如果中文显示乱码,通常是因为 终端编码 和 远程服务器编码 不一致。一般设置为 UTF-8 即可。
下面以常见 SecureCRT 版本为例说明设置方法。
UTF-8
Options → Global Options
Terminal → Appearance
Character encoding: UTF-8
SecureCRT 设置 UTF-8 后,还需确认服务器本身支持 UTF-8。
在远程服务器执行:
locale
正常应看到类似:
LANG=en_US.UTF-8
LC_CTYPE=UTF-8
如果不是 UTF-8,可以临时设置:
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
永久设置(以 CentOS / RHEL 为例):
vi /etc/locale.conf
内容:
LANG=en_US.UTF-8
在 SecureCRT:
Session Properties → Terminal → Appearance → Font
建议使用:
查看文件编码:
file filename
如果服务器是 GBK:
GBK 或 GB2312如果你愿意,可以告诉我:
我可以给你更精确的设置。