Você pode definir qualquer categoria de localidade de forma independente. LANG
aplica-se apenas às categorias que não estão definidas explicitamente.
LANG
e LC_xxx
são variáveis de ambiente comuns. Elas não são configurações para o utilitário locale
: o programa locale
não está envolvido em nenhum processamento de código de idioma, é apenas um pequeno utilitário para relatar configurações de localidade atuais e disponíveis.
Quando você escreve LC_TIME=ru_RU.utf8
, isso não define uma variável de ambiente, apenas uma variável de shell. As variáveis do shell são internas ao shell, elas não são vistas por outros programas. Variáveis de ambiente, por outro lado, são herdadas pelos programas que o shell inicia. Você precisa exportar a variável para o ambiente também:
$ LC_TIME=ru_RU.utf8
$ locale | grep LC_TIME
LC_TIME="et_EE.iso88591"
$ export LC_TIME
$ locale | grep LC_TIME
LC_TIME="ru_RU.utf8"
ou diretamente
$ export LC_TIME=ru_RU.utf8
$ locale | grep LC_TIME
LC_TIME="ru_RU.utf8"