Linux - locale (LANG, LC environment variable)

About

Most UNIX systems use the LANG variable to specify the desired locale but you can use also the setlocale function.

A locale defined the default encoding for the text file.

How to

Obtain the locale values

To obtain the locale names for your UNIX system, enter the following:

locale -a
[[email protected] ~]$ locale -a | grep -i en
en_AU
en_AU.iso88591
en_AU.utf8
en_BW
en_BW.iso88591
en_BW.utf8
en_CA
en_CA.iso88591
en_CA.utf8
en_DK
en_DK.iso88591
en_DK.utf8
en_GB
en_GB.iso88591
en_GB.iso885915
en_GB.utf8
en_HK
en_HK.iso88591
en_HK.utf8
en_IE
[email protected]
en_IE.iso88591
[email protected]
en_IE.utf8
en_IN
en_IN.utf8
en_NZ
en_NZ.iso88591
en_NZ.utf8
en_PH
en_PH.iso88591
en_PH.utf8
en_SG
en_SG.iso88591
en_SG.utf8
en_US
en_US.iso88591
en_US.iso885915
en_US.utf8
en_ZA
en_ZA.iso88591
en_ZA.utf8
en_ZW
en_ZW.iso88591
en_ZW.utf8

Obtain the locale values

When invoked without arguments, locale summarizes the current locale environment for each locale category defined by the LC_* environment variables.

locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

Set a locale

With the setlocale function

setlocale

Install

  • Ubuntu
apt-get install -y locales
# if you really want to have all locales :)
apt-get install -y locales-all

Documentation / Reference


Powered by ComboStrap