locale [option] locale [option] -a locale [option] -m locale [option] name...
引数なしで呼び出された場合、 locale は現在のロケールを制御する環境変数(locale(5) を参照)の設定に基づいて、ロケールカテゴリー毎 (locale(7) 参照)に表示します。環境で設定された変数の値は二重引用符なしで出力され、暗黙の値は二重引用符付きで出力されます。
オプション -a か -m のどちらか (もしくは同等の長い形式のオプション) が指定された場合、 動作は以下のようになります:
locale コマンドには引数として渡すことができます (複数指定可)。 これらの引数は、 ロケールのキーワード名 (例えば date_fmt, ctype-class-names,yesexpr, decimal_point) か、ロケールのカテゴリー名 (例えば LC_CTYPE,LC_TIME) です。 各引数について以下の情報が表示されます:
引数が指定された場合には、 以下のオプションが意味を持ちます:
locale コマンドでは以下のオプションも使用できます。
$ 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