LC_NUMERIC
由于点和逗号,我需要更改为英语(我有西班牙语的 Ubuntu),但如果LC_NUMERIC="en_US.UTF-8"
我在退出终端时使用并再次打开它,LC_NUMERIC
则又是西班牙语。
有人知道如何解决这个问题吗?
答案1
将值附加到您的~/.bashrc
文件:
echo 'export LC_NUMERIC="en_US.UTF-8"' >>~/.bashrc
为了使其从当前会话开始适用bash
,source
文件~/.bashrc
:
source ~/.bashrc
例子:这里我将从en_US.UTF-8
改为C
:
$ locale | grep LC_NUMERIC
LC_NUMERIC="en_US.UTF-8"
$ echo 'export LC_NUMERIC="C"' >>~/.bashrc
$ source ~/.bashrc
$ locale | grep LC_NUMERIC
LC_NUMERIC=C
这将locale
仅更改运行该命令的用户,对于系统范围的更改,您需要将值添加到/etc/default/locale
,请检查下面添加的部分。
您还可以将值添加到系统范围的locale
文件,/etc/default/locale
该文件将在启动时读取。将其放在那里:
echo 'LC_NUMERIC="en_US.UTF-8"' | sudo tee -a /etc/default/locale
或者
sudo bash -c 'echo "LC_NUMERIC=\"en_US.UTF-8\"" >>/etc/default/locale'
答案2
答案3
图形登录默认不会读取 shell 启动文件(~/.bashrc
, ~/.profile
等等),也不应该读取,因为这些是 bash 特有的。
因此最好用于/etc/environment
系统范围的环境设置和~/.xsessionrc
用户特定的设置。
PAM 应该默认读取/etc/environment
- 检查
/etc/pam.d/login /etc/pam.d/sshd /etc/pam.d/su /etc/pam.d/cron
包括以下行
session required pam_env.so readenv=1