CentOS:为用户设置区域设置

Ser*_*erg 5 linux localization bash centos

也许我不明白语言环境...但是你能解释一下吗:

如果我使用 localectl 设置区域设置:

localectl set-locale LANG=en_US.UTF-8
Run Code Online (Sandbox Code Playgroud)

我在 localectl 输出中看到:

   System Locale: LANG=en_US.UTF-8
       VC Keymap: us
      X11 Layout: us
Run Code Online (Sandbox Code Playgroud)

系统区域设置现在是 en_US.UTF-8

但在locale输出中我仍然看到这个:

LANG=ru_RU.UTF-8
LC_CTYPE=ru_RU.UTF-8
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE=ru_RU.UTF-8
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
Run Code Online (Sandbox Code Playgroud)

设置用户区域设置只有一种方法 - 将其导出或添加到 .bash_profile 文件中以在重新启动后保存?

小智 5

您可以执行以下操作:

\n\n

执行以下操作以进行全局更改

\n\n
/etc/default/locale \xe2\x80\x93 on Ubuntu/Debian\n/etc/locale.conf \xe2\x80\x93 on CentOS/RHEL\n
Run Code Online (Sandbox Code Playgroud)\n\n

对于特定用户,~/.bash_profile通过添加以下内容来编辑文件:

\n\n
LANG="<your selection>"\nexport LANG\n
Run Code Online (Sandbox Code Playgroud)\n