如何将终端语言更改为英语?
我熟悉使用vi
。
如果终端语言由 控制etc/default/locale
,我应该在那里进行什么更改?
LANG="el_GR.UTF-8"
LANGUAGE="el:en"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
答案1
太长不看
因为您想将所有内容设置为英语(假设使用 GNU gettext 的程序应该使用希腊语作为后备语言):
export LANG=en_US.UTF-8
export LANGUAGE=en:el
或者如果某些LC_*
变量已经在你的 shell 环境中定义并且你希望覆盖它们:
export LC_ALL=en_US.UTF-8
export LANGUAGE=en:el
为了使设置保留,请export
在 末尾添加 s ~/.bashrc
。
更改/etc/default/locale
将影响整个系统的区域设置,从而影响所有未设置特定区域设置的用户的区域设置,因此如果您只想更改在用户终端/控制台中运行的命令的语言,则不应更改它。
可以通过导出以下环境变量来更改用户终端/控制台中运行的命令的语言环境:
LANG
LANGUAGE
LC_ADDRESS
LC_ALL
LC_COLLATE
LC_CTYPE
LC_IDENTIFICATION
LC_MEASUREMENT
LC_MESSAGES
LC_MONETARY
LC_NAME
LC_NUMERIC
LC_PAPER
LC_TELEPHONE
LC_TIME
LANG
定义每个非明确定义的LC_*
变量要使用的值;因此,如果LC_*
当前您的 shell 环境中未定义任何变量(这是默认行为,如果env | grep '^LC_'
没有输出任何内容,则意味着情况确实如此)并且您希望将所有类别的值设置为en_US.UTF-8
,只需导出LANG
:
export LANG=en_US.UTF-8
否则,您还必须覆盖每个先前定义的LC_*
变量,或者(或者,更容易)只导出LC_ALL
,它将覆盖任何先前定义的LC_*
变量:
export LC_ALL=en_US.UTF-8
但是使用 GNU gettext 的程序将依赖于LANGUAGE
而不是LANG
/ LC_ALL
(除非LANG
/LC_ALL
设置为C
),并将根据其内容设置语言。LANGUAGE
应该定义一个以冒号分隔的语言列表。如果列出的第一个以冒号分隔的语言的翻译不可用,程序将尝试使用列出的第二个以冒号分隔的语言等;例如,将英语设置为首选语言并将希腊语设置为后备语言:
export LANGUAGE=en:el
因此,在您的情况下,由于您想将所有内容设置为英语(假设使用 GNU gettext 的程序应该使用希腊语作为后备语言):
export LANG=en_US.UTF-8
export LANGUAGE=en:el
或者如果某些LC_*
变量已经在你的 shell 环境中定义并且你希望覆盖它们:
export LC_ALL=en_US.UTF-8
export LANGUAGE=en:el
为了使设置保留,请export
在 末尾添加 s ~/.bashrc
。
答案2
问题是:“如何将终端语言更改为英语?”。
放
LANG=C
或者
LANG=C.UTF-8
(世界已经变成了……UTF8 变得很普遍)变成
.bashrc
或者
/etc/bash.bashrc
重启后,它可以在终端上使用。不影响 GUI。
如果语言设置适用于远程(SSH)登录使用
.profile
或者
/etc/profile
就这样。其他地点也可能适用!