Как установить постоянное значение LC_NUMERIC на английский?

4

Мне нужно изменить LC_NUMERIC на английский (у меня Ubuntu на испанском языке) из-за точек и запятых, но если я использую LC_NUMERIC="en_US.UTF-8" , когда я выхожу из терминала, и я снова его открываю, LC_NUMERIC снова на испанском языке.

Кто-нибудь знает, как это решить?     

задан Maria 22.01.2016 в 17:47
источник

2 ответа

6

Добавьте значение в файл ~/.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 , проверьте добавленную часть ниже.

Вы также можете добавить значение в файл systmwide 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'
    
ответ дан heemayl 22.01.2016 в 17:53
источник
0

Графические логины не считывают файлы запуска оболочки ( ~/.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

- > Ссылка

    
ответ дан ESDAT 27.02.2017 в 12:36