Help us understand the problem. What is going on with this article?

ロケール環境設定を理解して使う

ロケール環境は全部で8種類あります。
それぞれに意味や優先順位、グループが存在します。

  • LANG
  • LC_COLLATE
  • LC_CTYPE
  • LC_MESSAGES
  • LC_MONETARY
  • LC_NUMERIC
  • LC_TIME
  • LC_ALL

設定の仕方

それぞれの環境変数は以下のように設定をします。

export LANG=en_US.UTF-8

ロケール環境の意味

LANG

LANGは少々特殊な役割をしています。

LANGを設定するとロケール環境の大半がLANGと同じ内容で設定されます。
例えばexport LANG=en_US.UTF-8を設定したとすれば、

スクリーンショット 2019-04-22 11.12.53.png

このように設定されます。(LC_CTYPEとLC_ALLは変更されていません)

LANGの優先順位は一番低いため、その他のロケール設定で部分的に上書きして使うことができます。

LC_COLLATE

文字のソート順に使用します。

LC_CTYPE

文字数の計算や判定に使用します。

LC_MESSAGES

通知・診断メッセージや対話式応答のフォーマットに使用します。

LC_MONETARY

通貨のフォーマットに使用します。

LC_NUMERIC

通貨ではない数値のフォーマットに使用します。

LC_TIME

日時フォーマットに使用します。

LC_ALL

LC_ALLは全てのロケール環境設定を一括で設定するためのものです。
LC_ALLの設定は最優先のため、その他のロケール設定を全て上書きします。

その他

その他にもいくつかロケール環境がありますが、localeコマンドで出力される有名な環境はこれだけです。

参考

NAKKA-K
趣味はリファクタリング。 Laravel, React, Scrum, 筋トレを良くするWebエンジニア。
https://nakka-k.hatenablog.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした