LoginSignup
0
0

More than 1 year has passed since last update.

Linux ロケール(locale,iconv)について(自分用メモ

Posted at

Linuxなどのソフトウェアで表示される言語やフォント、日付や通貨などの書式を利用者の言語に翻訳したりして合わせることをローカライゼーション「L10n(Localization)」という。
また、ソフトウェア設計時から、多様な地域や多言語に対応できるように考慮することを国際化「i18n(internationalization)」という。

ロケール用の主な環境変数(カテゴリ)

・LC_CTYPE 文字の分類、文字の種類の規定
・LC_NUMERIC 数値の書式
・LC_TIME 日付・時刻の書式
・LC_MESSAGES 出力メッセージの言語
・LC_MONETARY 通貨の書式
・LC_ALL 指定した値が全てのカテゴリを上書きし、カテゴリごとの設定ができない
・LANG 指定した値が全てのカテゴリを上書きするが、カテゴリごとの設定はできる。(LC_ALLが設定されていない場合は指定した値がデフォルトとして使用される)

システム全体のロケール設定ファイルは「/etc/locale.conf」
システム全体のロケール設定ファイルにLC_ALLを設定できるが、設定することは推奨されない

●localeコマンド
現在のロケールの設定確認。

locale [-a]

オプションを指定しないで実行すると現在のロケールの設定が表示
「-a」オプションを使用すると現在のシステムで使用できるロケールが表示

●iconvコマンド
文字コードを変換。変換した内容を標準出力に出力するため、ファイルに保存する場合はリダイレクトを使用。

iconv [オプション] [入力ファイル]

オプション
・-f 文字コード 変換前の文字コードを指定(from)
・-t 文字コード 変換後の文字コードを指定(to)
・-l 扱える文字コードを表示(list)

Windowsで作成したファイルをLinux上で開くと文字化けを起こすことがある。このような場合は文字コードの変換コマンド「iconv」を使う。

●主な文字コード

・ASCII 7ビットの文字コード128種類の文字
・ISO-8859 ASCIIを8ビットに拡張したもの。256種類の文字
・ISO-2022-JP 日本語でのメール送信で主に使用されていた日本語文字コード(JISコードとも呼ばれる)
・Unicode 多言語を扱うために作成された符号化文字集合。UTF-8(多くのLinuxで標準的に利用されている)などがある

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0