iconv - テキストをある文字符号化から別の文字符号化に変換する
iconv [options] [-f from-encoding] [-t to-encoding] [inputfile]...
iconv プログラムはある符号化 (encoding) からテキストを読み出し、 別の符号化でそのテキストを出力する。 入力が指定されなかった場合、 もしくは入力ファイルとしてダッシュ (-) が指定された場合、 iconv は標準入力から入力を行う。 出力が指定されなかった場合、 iconv は標準出力に出力する。
from-encoding が指定されなかった場合、 デフォルトは現在のロケールの文字符号化から取得される。 to-encoding が指定されなかった場合、 デフォルトは現在のロケールの文字符号化から取得される。
内部では、 iconv プログラムは iconv(3) 関数を使用する。 iconv(3) 関数は順に gconv モジュール (動的にロードされる共有ライブラリ) を使って、 変換元、変換先の文字集合を取り扱う。 iconv(3) を呼び出す前に、 iconv プログラムは最初に iconv_open(3) を使って変換ディスクリプターを割り当てる。 iconv_open(3) の動作は GCONV_PATH 環境変数の設定の影響を受ける。
- GCONV_PATH が設定されていない場合、 iconv_open(3) は iconvconfig(8) により作成されたシステムの gconv モジュール設定キャッシュファイルを読み込み、 それからこの設定に基づき、 変換を行うのに必要な gconv モジュールをロードする。 システムの gconv モジュール設定キャッシュファイルが利用できない場合、 システムの gconv モジュール設定ファイルが使用される。
- GCONV_PATH (コロン区切りのパス名のリスト) が定義されている場合、 システムの gconv モジュール設定キャッシュは使用されない。 代わりに iconv_open(3) は最初に GCONV_PATH に指定されたディレクトリを順番に検索して設定ファイルの読み出しを試み、 その後でシステムのデフォルトの gconv モジュール設定ファイルをロードする。 ディレクトリに gconv モジュール設定ファイルがない場合、 そのディレクトリにある gconv モジュールは無視される。 ディレクトリに gconv モジュール設定ファイルがあり、 そのディレクトリに現在の変換に必要なモジュールがあると判断した場合、 必要なモジュールがこのディレクトリからロードされる。 GCONV_PATH で最初に見つかった適切なモジュールが使用される。 これにより、 ユーザーが独自のモジュールを使用し、 GCONV_PATH ディレクトリにそれらのモジュールを置くことでシステムが提供するモジュールを置き換えることができる。
- /usr/lib/gconv
- 通常のデフォルトの gconv モジュールのパス。
- /usr/lib/gconv/gconv-modules
- 通常のデフォルトの gconv モジュールのシステム設定ファイル。
- /usr/lib/gconv/gconv-modules.cache
- 通常のデフォルトの gconv モジュールのシステム設定キャッシュ。
テキストを ISO 8859-15 文字符号化から UTF-8 に変換する。
$ iconv -f ISO-8859-15 -t UTF-8 < input.txt > output.txt
以下の例は UTF-8 から ASCII への変換を行い、 可能であれば書き直し (transliterate) を行う。
$ echo abc ß α € àḃç | iconv -f UTF-8 -t ASCII//TRANSLIT
abc ss ? EUR abc
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。