终端错误消息不是英文的

Pau*_*dev 5 linux terminal language bash ubuntu

我的机器上安装了 Ubuntu 15.04。当前终端错误消息不是英文的(实际上它们是俄文的)。

例如,

$ mmmm
mmmm: ??????? ?? ???????
Run Code Online (Sandbox Code Playgroud)

我想看看

$ mmmm
mmmmm: command was not found
Run Code Online (Sandbox Code Playgroud)

这个 SO 帖子提供的解决方案对我不起作用。

Tho*_*key 6

SO邮政是在正确的方向,但也有其可以被应用程序测试了几种环境变量。例如,我使用此脚本来可靠地设置命令的语言环境:

#!/bin/sh
# $Id: with-locale,v 1.6 2011/10/27 22:51:45 tom Exp $
unset LANG
unset LC_ALL
unset LC_CTYPE
unset LESSCHARSET
unset LANGUAGE

LANG=$1
LC_ALL=$1
GDM_LANG=$1

export LANG
export LC_ALL
export GDM_LANG
shift
exec "$@"
Run Code Online (Sandbox Code Playgroud)

也就是说,with-locale在我的道路上,我可能会做

with-locale C mmmmmm
Run Code Online (Sandbox Code Playgroud)

验证它没有硬编码消息。

始终可以通过运行locale命令来检查哪些变量适用于您的环境。

其中一条评论询问了dpkg-reconfigure locales. 那是,

sudo dpkg-reconfigure locales
Run Code Online (Sandbox Code Playgroud)

将为您提供更改机器上默认语言环境设置的方法(参见例如如何修复我的语言环境问题?在 AskUbuntu 上)。您的 shell 初始化当然可以覆盖这些。请注意,因为有多个变量,它们的设置可能不一致。的区域设置(7)手册页提到几个的可能性,包括LANGUAGE其可以是问题的根源,因为它变量覆盖POSIX标准变量。