当我设置了 LC_ALL=C(用于命令行上的英文输出)后,我如何才能返回到我原来的语言环境 (nl_NL)?

cor*_*ice 7 command-line locale

我在LC_ALL=C解决区域设置问题上看到了有用的帖子,但对我来说这些看起来有点太复杂了。

在开始的会话中,LC_ALL=C bash我尝试了明显的LC_ALL=nl_NL,但这给出了警告,所以我不确定在设置LC_ALL=C(没有bash)时这是否是正确的方法

Zan*_*nna 10

@steeldriver 是对的,不出所料。你需要做的就是

LC_ALL=
Run Code Online (Sandbox Code Playgroud)

恢复会话的所有正常区域设置。

例子:

$ export LC_ALL=C
$ locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=C
Run Code Online (Sandbox Code Playgroud)

设置LC_ALL=恢复原始locale设置

$ LC_ALL=
$ locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY=en_GB.UTF-8
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER=en_GB.UTF-8
LC_NAME=en_GB.UTF-8
LC_ADDRESS=en_GB.UTF-8
LC_TELEPHONE=en_GB.UTF-8
LC_MEASUREMENT=en_GB.UTF-8
LC_IDENTIFICATION=en_GB.UTF-8
LC_ALL=
Run Code Online (Sandbox Code Playgroud)


Gun*_*son 6

LC_ALL=nl_NL向您发出警告的可能原因是这nl_NL是启用 ISO-8859-1 编码的区域设置,并且它通常不是在 Ubuntu 系统上生成的。LC_ALL=nl_NL.UTF-8应该管用。正如其他人所说,LC_ALL=(即禁用它)也有效。