alterando a localidade do conjunto atual em um Linux (Ubuntu)

5

Eu tenho um sistema Ubuntu no qual a localidade atual é (saída do comando locale):

LANG=en_GB.UTF-8
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=

Eu quero alterá-lo para en_GB, porque alguns caracteres não são manipulados corretamente na tela do terminal.

Qual é o comando para alterar a localidade?

Qual é o comando para ver quais locais diferentes estão disponíveis no sistema atual para eu configurar / tentar?

    
por goldenmean 28.07.2011 / 16:16

2 respostas

6

A localidade usada é definida através de variáveis de ambiente para o processo (como o shell em execução no seu terminal).

Na maioria das vezes, basta alterar LANG , supondo que você use bash

$ export LANG=en_GB

Coloque isso no seu arquivo ~/.profile para que ele funcione para todos os processos (até mesmo não-terminais).

Você pode dar uma olhada em /usr/share/locale/ para uma lista de localidades.

    
por 28.07.2011 / 16:28
4

Você também pode usar locale -a para obter uma lista de localidades disponíveis em seu sistema (além de /usr/share/locale/ , pode haver algumas encontradas em /usr/lib/locale/ . Para definir a localidade, há também o comando setlocale , mas eu nunca consegui que funcionasse e usei export como o usuário honk descrito.

    
por 28.07.2011 / 16:50