Linux(Ubuntu)で現在設定されているロケールを変更する

Linux(Ubuntu)で現在設定されているロケールを変更する

現在のロケールが次の Ubuntu システムです (locale コマンドの出力):

LANG=en_GB.UTF-8
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=

一部の文字が端末ディスプレイ上で適切に処理されないため、en_GB に変更します。

ロケールを変更するコマンドは何ですか?

現在のシステムで設定/試すことができるさまざまなロケールを確認するためのコマンドは何ですか?

答え1

使用されるロケールは、プロセスの環境変数 (ターミナルで実行されているシェルなど) によって設定されます。

LANGほとんどの場合、を変更するだけで十分です。bash

$ export LANG=en_GB

これをファイルに追加すると~/.profile、すべてのプロセス(非ターミナルプロセスも含む)で機能するようになります。

/usr/share/locale/ロケールのリストについてはこちらをご覧ください。

答え2

また、locale -aシステムで利用可能なロケールのリストを取得するために を使用することもできます( に加えて/usr/share/locale/、 にもいくつかある可能性があります /usr/lib/locale/。ロケールを設定するには、 コマンド もありますがsetlocale、私はこれを動作させることができず、exportユーザーとして使用しました。クラクションを鳴らす説明された。

関連情報