ОБЗОР
locale [параметр]
locale [параметр] -a
locale [параметр] -m
locale [параметр] имя…
ОПИСАНИЕ
Команда locale выдаёт в стандартный вывод информацию о текущей или всех локалях.При запуске без аргументов locale выводит настройки текущей локали по каждой категории локали (смотрите locale(5)) в зависимости от настроек переменных окружения, которые управляют локалью (смотрите locale(7)). Значения для переменных, установленных из окружения, печатаются без двойных кавычек; предполагается, что кавычки содержатся в самих значениях.
Если указан параметр -a или -m (или их длинные эквиваленты), то выполняется следующее:
- -a, --all-locales
- Выдаётся список всех доступных локалей. С параметром -v в вывод добавляются метаданные LC_IDENTIFICATION по каждой выводимой локали.
- -m, --charmaps
- Выдаются доступные кодировки (charmaps, файлы описаний наборов символов).
Команде locale также можно передать один или более аргументов: имена ключевых слов локали (например, date_fmt, ctype-class-names, yesexpr или decimal_point) или категории локали (например, LC_CTYPE или LC_TIME). Для каждого аргумента отображается следующее:
- *
- Для ключевого слова локали — значение этого ключевого слова.
- *
- Для категории локали — значения всех ключевых слов в этой категории.
При указании аргументов доступны следующие параметры:
- -c, --category-name
-
Для аргумента имени категории, выводится имя категории локали в отдельной
строке перед списком значений ключевых слов этой категории.
Для аргумента имени ключевого слова, выводится имя категории локали для этого ключевого слова в отдельной строке перед значением ключевого слова.
Этот параметр повышает читаемость при указании нескольких аргументов. Его можно указывать совместно с параметром -k.
- -k, --keyword-name
-
Для каждого ключевого слова при отображении значений также выводится имя
этого ключевого слова; формат вывода:
ключевое слово="значение"
Команда locale также имеет следующие параметры:
- -v, --verbose
- Отобразить дополнительную информацию при некоторых комбинациях параметров командной строки и аргументов.
- -?, --help
- Показать справку по параметрам командной строки и аргументам и завершить работу.
- --usage
- Показать короткое сообщение об использовании и завершить работу.
- -V, --version
- Показать версию программы и выйти.
ФАЙЛЫ
- /usr/lib/locale/locale-archive
- Обычный путь по умолчанию для расположения архива локалей.
- /usr/share/i18n/locales
- Обычный путь по умолчанию для файлов определений локалей.
СООТВЕТСТВИЕ СТАНДАРТАМ
POSIX.1-2001, POSIX.1-2008.ПРИМЕР
$ 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= $ locale date_fmt %a %b %e %H:%M:%S %Z %Y $ locale -k date_fmt date_fmt="%a %b %e %H:%M:%S %Z %Y" $ locale -ck date_fmt LC_TIME date_fmt="%a %b %e %H:%M:%S %Z %Y" $ locale LC_TELEPHONE +%c (%a) %l (%a) %l 11 1 UTF-8 $ locale -k LC_TELEPHONE tel_int_fmt="+%c (%a) %l" tel_dom_fmt="(%a) %l" int_select="11" int_prefix="1" telephone-codeset="UTF-8"
В следующем примере компилируется специализированная локаль из каталога ./wrk с помощью утилиты localedef(1) в каталоге $HOME/.locale, затем тестируется результат командой date(1), а потом устанавливается переменные окружения LOCPATH и LANG в файле оболочки профиля для того, чтобы специализированная локаль была задействована в последующих сеансах пользователя:
$ mkdir -p $HOME/.locale $ I18NPATH=./wrk/ localedef -f UTF-8 -i fi_SE $HOME/.locale/fi_SE.UTF-8 $ LOCPATH=$HOME/.locale LC_ALL=fi_SE.UTF-8 date $ echo "export LOCPATH=\$HOME/.locale" >> $HOME/.bashrc $ echo "export LANG=fi_SE.UTF-8" >> $HOME/.bashrc