出现这个情况一般是由于没有安装中文语言包,或者设置的默认语言有问题导致的。
查看当前语言环境
echo $LANG
发现为
zh_TW.UTF-8
但是中文语言包没安装或没启用,就会出现乱码
输入LANG=en_US
设置显示为英文,此命令即时生效,但不能永久生效,永久生效看下面。
此时,再次输入命令就可以看到英文报错信息了
如果一定需要中文提示,可以这样安装:
yum groupinstall chinese-support
设置本地默认语言环境
vim /etc/locale.conf
加入
LANG=“zh_TW.UTF-8”
即时永久生效
source /etc/locale.conf
输locale
可以查看本地语言环境
LANG=zh_TW.UTF-8 LC_CTYPE="zh_TW.UTF-8" LC_NUMERIC=zh_TW.UTF-8 LC_TIME=zh_TW.UTF-8 LC_COLLATE="zh_TW.UTF-8" LC_MONETARY=zh_TW.UTF-8 LC_MESSAGES="zh_TW.UTF-8" LC_PAPER=zh_TW.UTF-8 LC_NAME="zh_TW.UTF-8" LC_ADDRESS="zh_TW.UTF-8" LC_TELEPHONE="zh_TW.UTF-8" LC_MEASUREMENT=zh_TW.UTF-8 LC_IDENTIFICATION="zh_TW.UTF-8" LC_ALL=
注意,我这变语言环境是台湾繁体,中文简体应将TW改为CN
附录:下面看下centos中显示utf-8编码格式的shell脚本有中文乱码解决方法
问题现象
自己编写的shell脚本,保存的编码格式为utf-8,但是上传到centos中,显示为中为乱码
使用file shell.sh
查看文件的编码格式
shell.sh: UTF-8 Unicode text
解决方法
使用iconv 把文件编码格式转换成为gb2312
iconv -f utf-8 -t gb2312 shell.sh > shell2.sh
再次file shell2.sh查看文件编码
linuxsec2.sh: ISO-8859 text
中文乱码问题得以解决
到此这篇关于CentOS8出现-bash:乱码问题的文章就介绍到这了,更多相关centos bash 乱码内容请搜索自学编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持自学编程网!
- 本文固定链接: https://zxbcw.cn/post/185818/
- 转载请注明:必须在正文中标注并保留原文链接
- QQ群: PHP高手阵营官方总群(344148542)
- QQ群: Yii2.0开发(304864863)