首先locale查看系统当前的语言环境
LC_ALL是一个宏,该值是可以不设置的,感觉问题应该处在LC_CTYPE上。
根据链接上的回答,LC_CTYPE="UTF-8"是一个无效的locale name,按照Gunnar Hjalmarsson所说,应把环境变量中的LC_CTYPE="UTF-8"这一行去掉,(因LANG已经设置了,可以不用设置?)再relogin。
但我知道这个locale的配置文件在哪里,若用export,则只是临时有效,故再~/.bash_profile中添加 export LC_CTYPE=“zh_CN.UTF-8” , 保存关闭后再source ~/.bash_profile, 这样这个环境变量就在我的目录下永久有效了。linux设置环境变量,临时or永久有效
最后,关于locale的知识
现在我的locale显示:
中文文件名乱码也解决了。