在 Linux 下使用 SecureCRT 出现乱码,90% 是字符编码不一致导致的。下面按常见原因逐步排查解决。
Terminal → Appearance → Character encoding
✅ 一般改完后 重新连接 即可。
在服务器上执行:
locale
echo $LANG
推荐输出类似:
LANG=en_US.UTF-8
or
LANG=zh_CN.UTF-8
如果不是 UTF-8,可临时修改:
export LANG=zh_CN.UTF-8
永久修改(谨慎):
# ~/.bashrc 或 ~/.bash_profile
export LANG=zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8
有时不是乱码,而是字体不支持中文。
如果服务器没有中文 locale:
locale -a | grep zh
如果没有,可安装:
sudo apt install locales
sudo dpkg-reconfigure locales
sudo yum install langpacks-zh_CN
如果 只有 vim 乱码:
vim ~/.vimrc
添加:
set encoding=utf-8
set fileencodings=utf-8,gbk
set termencoding=utf-8
如果仍乱码:
Linux 或 XtermUse locale is not supportedSecureCRT 乱码 ≠ 服务器乱码
优先改:Session → Character encoding → UTF-8
如果你愿意,可以把以下信息发我,我可以一步到位帮你定位:
echo $LANG 输出我可以直接给你精确配置方案。