Linux-locale字符集报错


登录服务器报错:

-bash: warning: setlocale: LC_TIME: cannot change locale (en_US.UTF-8)

locale命令查看

locale: Cannot set LC_ALL to default locale: ûԐҸþ»倂¼

LANG=zh_CN.gbk

LC_CTYPE=”zh_CN.gbk”

LC_NUMERIC=”zh_CN.gbk”

LC_TIME=”zh_CN.gbk”

LC_COLLATE=”zh_CN.gbk”

LC_MONETARY=”zh_CN.gbk”

LC_MESSAGES=”zh_CN.gbk”

LC_PAPER=”zh_CN.gbk”

LC_NAME=”zh_CN.gbk”

LC_ADDRESS=”zh_CN.gbk”

LC_TELEPHONE=”zh_CN.gbk”

LC_MEASUREMENT=”zh_CN.gbk”

LC_IDENTIFICATION=”zh_CN.gbk”

LC_ALL=

Vim 编辑命令中文还是乱码。

参考网上很多方案:

# vim /etc/profile.d/locale.sh

export LC_CTYPE=zh_CN.UTF-8

export LC_ALL=zh_CN.UTF-8

# vim /etc/locale.conf

LANG=zh_CN.UTF-8

# vim /etc/sysconfig/i18n

LANG=zh_CN.UTF-8

# vim /etc/environment

LANG=zh_CN.UTF-8

LC_ALL=zh_CN.UTF-8

依旧警告,最后使用下面命令解决:

localedef -v -c -i en_US -f UTF-8 en_US.UTF-8

首先看我们的登录警告提示:-bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory.因为我们已经设置了默认地区_语言.字符集为 en_US.UTF-8,但是在系统中没有定义这个问题。 我们可以通过运行 locale -a 查看系统当前支持的locale定义。在上面我们看到,我们通过运行“localedef -v -c -i en_US -f UTF-8 en_US.UTF-8” 生成相应的locale配置文件。之后系统就不会报错了。

vim乱码:

vim /etc/vimrc 或者 /etc/vim/vimrc系统不同:

最后追加:

set fileencodings=utf-8

set termencoding=utf-8

set encoding=prc

或者

set fileencodings=gb2312,utf-8

set fileencoding=gb2312

set termencoding=utf-8

vim /etc/profile

export LANG=”zh_CN.UTF-8”


文章作者: 云上的小雨滴
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 云上的小雨滴 !
评论
  目录