Como definir LC_NUMERIC para inglês permanentemente?

4

Eu preciso alterar LC_NUMERIC para o inglês (tenho o Ubuntu em espanhol) por causa dos pontos e vírgulas, mas se eu usar LC_NUMERIC="en_US.UTF-8" quando eu sair do terminal e abri-lo novamente, LC_NUMERIC é novamente em espanhol.

Alguém sabe como resolver isso?

    
por Maria 22.01.2016 / 17:47

2 respostas

7

Anexe o valor ao seu arquivo ~/.bashrc :

echo 'export LC_NUMERIC="en_US.UTF-8"' >>~/.bashrc

Para torná-lo aplicável a partir da sessão atual de bash , source o arquivo ~/.bashrc :

source ~/.bashrc

Exemplo: Aqui estou mudando de en_US.UTF-8 para 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

Isso alterará o locale somente para o usuário que está executando o comando, para alteração em todo o sistema você precisa adicionar o valor a /etc/default/locale , verifique a parte adicionada abaixo.

Você também pode adicionar o valor ao arquivo systmwide locale , /etc/default/locale , que será lido no início. Para colocar lá:

echo 'LC_NUMERIC="en_US.UTF-8"' | sudo tee -a /etc/default/locale

Ou

sudo bash -c 'echo "LC_NUMERIC=\"en_US.UTF-8\"" >>/etc/default/locale'
    
por heemayl 22.01.2016 / 17:53
0

Logins gráficos não leem arquivos de inicialização do shell ( ~/.bashrc , ~/.profile e assim por diante) por padrão e também não devem porque são bash específicos.

Portanto, é melhor usar /etc/environment para configurações de ambiente do sistema e ~/.xsessionrc para configurações específicas do usuário.

O PAM deve, por padrão, ler /etc/environment - verifique se

/etc/pam.d/login /etc/pam.d/sshd /etc/pam.d/su /etc/pam.d/cron

inclui a linha

session       required   pam_env.so readenv=1

- > link

    
por ESDAT 27.02.2017 / 12:36