locale コマンド
目的
現行ロケールまたはすべての共用ロケールに関する情報を標準出力に書き出します。
構文
説明
locale コマンドは、現行ロケールまたはすべての共用ロケールに関する情報を標準出力に書き出します。 共用ロケールとは、すべてのアプリケーションに使用できるロケールです。
各現行ロケール・カテゴリーの名前と値を書き込むには、フラグまたは変数を何も指定しません。 使用可能なすべての共用ロケールの名前を書き込むには、-a フラグを指定します。 使用可能なすべての文字マッピング (charmap) ファイルの名前のリストを書き込むには、-m フラグを指定します。 これらの charmap ファイル名は、localedef コマンドで指定する -f フラグに有効な値です。
指定したロケール・カテゴリーと現行ロケール内のキーワードに関する情報を書き込むには、Name パラメーターを指定します。 Name パラメーターには、次のいずれかを指定することができます。
- LC_CTYPE または LC_MESSAGES などのロケール・カテゴリー
- yesexpr または decimal_point などのキーワード
- 現在の文字マッピングを判別するための charmap 予約語
locale コマンドでは複数の Name パラメーターを指定できます。
ロケール・カテゴリー名を指定し、フラグを付けずに locale コマンドを指定すると、locale コマンドは Name パラメーターで指定されたロケール・カテゴリー内のすべてのキーワードの値を書き込みます。 ロケール・キーワードを指定し、フラグを付けずに locale コマンドを指定すると、locale コマンドは Name パラメーターで指定されたキーワードの値を書き込みます。
Name パラメーターがロケール・カテゴリー名またはキーワードであれば、-c および -k フラグを指定して、locale コマンドで表示される情報を決定することができます。
フラグ
項目 | 説明 |
---|---|
-a | 使用できる共用ロケールのすべての名前を書き込みます。 |
-c | 指定したロケール・カテゴリーの名前を書き込みます。 Name パラメーターがキーワードであれば、locale コマンドは指定されたキーワードが入っているロケール・カテゴリーの名前、および指定されたキーワードの値を書き込みます。 Name パラメーターがロケール・カテゴリーであれば、locale コマンドは指定されたロケール・カテゴリーの名前とそのロケール・カテゴリーの中のすべてのキーワードの値を書き込みます。 |
-k | 選択したキーワードの名前と変数を書き込みます。 Name パラメーターがキーワードであれば、locale コマンドは指定されたキーワードの名前と値を書き込みます。 Name パラメーターがロケール・カテゴリーであれば、locale コマンドは指定されたロケール・カテゴリー内のすべてのキーワードの名前と値を書き込みます。 |
-m | 使用可能なすべての文字マッピング (charmap) ファイルの名前を書き込みます。 |
-ck | ロケール・カテゴリーの名前を書き込んでから、選択されたキーワードの名前と値を書き込みます。 Name パラメーターがキーワードであれば、locale コマンドは指定されたキーワードが入っているロケール・カテゴリーの名前と、指定されたキーワードの名前と値を書き込みます。 Name パラメーターがロケール・カテゴリーであれば、locale コマンドは指定されたロケール・カテゴリーの名前と、そのロケール・カテゴリーの中のすべてのキーワードの名前と値を書き込みます。 |
-O 64 | 64 ビットの実行可能ファイルで表示されるロケール情報を表示します。 この情報は、32 ビット実行可能ファイルで表示される情報と同じであるはずです。 |
終了状況
このコマンドは次の終了値を戻します。
項目 | 説明 |
---|---|
0 | 要求した情報はすべて検出され、正常に出力されました。 |
>0 | エラーが発生しました。 |
例
- すべての現行ロケール環境変数の名前と値を取り出すには、次のように入力します。
locale_x と locale_y が、 locale -a によって判別されるシステム上で有効なロケールであり、 ロケール環境変数が次のように設定されているものと仮定すると、locale
locale コマンドは、次の出力を作成します。LANG=locale_x LC_COLLATE=locale_y
LANG=locale_x LC_CTYPE="locale_x" LC_COLLATE=locale_y LC_TIME="locale_x" LC_NUMERIC="locale_x" LC_MONETARY="locale_x" LC_MESSAGES="locale_x" LC_ALL=
注: ロケール変数を設定すると、値の一部は他のロケール変数の値を暗黙に指定します。 例えば、LC_ALL ロケール変数を En_US ロケールに設定すると、すべてのロケール環境変数は En_US ロケールに設定されます。 また、暗黙値は二重引用符 (") で囲みます。 明示的に設定する値は二重引用符 (") で囲みません。
- 現在の文字マッピングを判別するには、次のように入力します。
LC_ALL ロケール変数を C ロケールに設定すると、locale コマンドは次の出力を作成します。locale charmap
ISO8859-1
- 現行ロケールの decimal_point 区切り記号の値を取り出すには、次のように入力します。
LC_ALL ロケール変数を C ロケールに設定すると、locale コマンドは次の出力を作成します。locale -ck decimal_point
LC_NUMERIC decimal_point="."