Linuxシステムでテキストの文字符号化を変更する方法
私たちが知っているように、コンピュータは低レベルのバイナリ値しか処理できず、文字を直接処理することはできません。1つのテキストファイルが格納されると、ファイル内の各文字はバイナリ値にマッピングされ、実際にハードディスクに格納されているのはこれらの「バイナリ値」です。その後、プログラムがテキストファイルを開くと、すべてのバイナリ値が読み込まれ、元の読み取り可能な文字にマッピングされます。この「保存と開く」プロセスは、このファイルにアクセスする必要があるすべてのプログラムが、その符号化、すなわちバイナリ値から文字へのマッピングを「理解」できる場合にのみ、よく完了し、データの往復プロセスを理解することができます。
異なるプログラムが同じファイルを異なる符号化で処理すると、ソースファイルの特殊文字が正常に表示されません。ここでの特殊文字とは、アクセントのある文字(例えば?,á,ü)など、英字以外の文字を指す。
ステップ1ファイルの文字符号化を決定するには、「file」というコマンドラインツールを使用します。fileコマンドは標準的なUNIXプログラムなので、すべての現代のLinuxリリース版で見つけることができます。
次のコマンドを実行します。
コードのコピー次に、Linuxシステムでサポートされているファイル符号化の種類を確認します。このため、iconvという名前のツールと「-l」オプション(Lの小文字)を使用して、現在サポートされているすべての符号化をリストします。
コードのコピーLinuxシステムでサポートされている符号化でターゲット符号化を選択した後、次のコマンドを実行して符号化変換を完了します。
コードのコピー例えばiso-8859-1符号化をutf-8符号化に変換する:
コードのコピー