.\" Copyright (C) 2014 Michael Kerrisk .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .TH locale 1 2023-05-03 "Linux man-pages 6.05.01" .SH NAME locale \- get locale-specific information .SH SYNOPSIS .nf .BR locale " [\fIoption\fP]" .BR locale " [\fIoption\fP] " \-a .BR locale " [\fIoption\fP] " \-m .BR locale " [\fIoption\fP] \fIname\fP..." .fi .SH DESCRIPTION The .B locale command displays information about the current locale, or all locales, on standard output. .PP When invoked without arguments, .B locale displays the current locale settings for each locale category (see .BR locale (5)), based on the settings of the environment variables that control the locale (see .BR locale (7)). Values for variables set in the environment are printed without double quotes, implied values are printed with double quotes. .PP If either the .B \-a or the .B \-m option (or one of their long-format equivalents) is specified, the behavior is as follows: .TP .BR \-a ", " \-\-all\-locales Display a list of all available locales. The .B \-v option causes the .B LC_IDENTIFICATION metadata about each locale to be included in the output. .TP .BR \-m ", " \-\-charmaps Display the available charmaps (character set description files). To display the current character set for the locale, use \fBlocale \-c charmap\fR. .PP The .B locale command can also be provided with one or more arguments, which are the names of locale keywords (for example, .IR date_fmt , .IR ctype\-class\-names , .IR yesexpr , or .IR decimal_point ) or locale categories (for example, .B LC_CTYPE or .BR LC_TIME ). For each argument, the following is displayed: .IP \[bu] 3 For a locale keyword, the value of that keyword to be displayed. .IP \[bu] For a locale category, the values of all keywords in that category are displayed. .PP When arguments are supplied, the following options are meaningful: .TP .BR \-c ", " \-\-category\-name For a category name argument, write the name of the locale category on a separate line preceding the list of keyword values for that category. .IP For a keyword name argument, write the name of the locale category for this keyword on a separate line preceding the keyword value. .IP This option improves readability when multiple name arguments are specified. It can be combined with the .B \-k option. .TP .BR \-k ", " \-\-keyword\-name For each keyword whose value is being displayed, include also the name of that keyword, so that the output has the format: .IP .in +4n .EX .IR keyword =\[dq] value \[dq] .EE .in .PP The .B locale command also knows about the following options: .TP .BR \-v ", " \-\-verbose Display additional information for some command-line option and argument combinations. .TP .BR \-? ", " \-\-help Display a summary of command-line options and arguments and exit. .TP .B \-\-usage Display a short usage message and exit. .TP .BR \-V ", " \-\-version Display the program version and exit. .SH FILES .TP .I /usr/lib/locale/locale\-archive Usual default locale archive location. .TP .I /usr/share/i18n/locales Usual default path for locale definition files. .SH STANDARDS POSIX.1-2008. .SH HISTORY POSIX.1-2001. .SH EXAMPLES .EX $ \fBlocale\fP 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= .PP $ \fBlocale date_fmt\fP %a %b %e %H:%M:%S %Z %Y .PP $ \fBlocale \-k date_fmt\fP date_fmt="%a %b %e %H:%M:%S %Z %Y" .PP $ \fBlocale \-ck date_fmt\fP LC_TIME date_fmt="%a %b %e %H:%M:%S %Z %Y" .PP $ \fBlocale LC_TELEPHONE\fP +%c (%a) %l (%a) %l 11 1 UTF\-8 .PP $ \fBlocale \-k LC_TELEPHONE\fP tel_int_fmt="+%c (%a) %l" tel_dom_fmt="(%a) %l" int_select="11" int_prefix="1" telephone\-codeset="UTF\-8" .EE .PP The following example compiles a custom locale from the .I ./wrk directory with the .BR localedef (1) utility under the .I $HOME/.locale directory, then tests the result with the .BR date (1) command, and then sets the environment variables .B LOCPATH and .B LANG in the shell profile file so that the custom locale will be used in the subsequent user sessions: .PP .EX $ \fBmkdir \-p $HOME/.locale\fP $ \fBI18NPATH=./wrk/ localedef \-f UTF\-8 \-i fi_SE $HOME/.locale/fi_SE.UTF\-8\fP $ \fBLOCPATH=$HOME/.locale LC_ALL=fi_SE.UTF\-8 date\fP $ \fBecho "export LOCPATH=\e$HOME/.locale" >> $HOME/.bashrc\fP $ \fBecho "export LANG=fi_SE.UTF\-8" >> $HOME/.bashrc\fP .EE .SH SEE ALSO .BR localedef (1), .BR charmap (5), .BR locale (5), .BR locale (7)