文字コード確認
nkf△-g△ファイル名
使用するファイルを2種類用意しました。「sample-linux」と「sample-windows」です。sample-linuxは文字コードutf-8改行コードLFです。「sample-windows」は文字コードShift_jis改行コードCRLFです。まずテキストファイルの内容をmoreコマンドで確認してみます。
[server@localhost work]$
[server@localhost work]$ cat sample-linux
プログラム言語によっては
変数に格納されているのは値そのものではなく
実は値のポインタであるという言語もあります。
[server@localhost work]$
[server@localhost work]$ more sample-windows
�v���O���������ɂ����Ă
�ϐ��Ɋi�[�����Ă����̂͒l���̂��̂ł͂Ȃ�
�͒l�̃|�C���^�ł����Ƃ��������������܂��B
[server@localhost work]$
[server@localhost work]$ cat sample-linux
プログラム言語によっては
変数に格納されているのは値そのものではなく
実は値のポインタであるという言語もあります。
[server@localhost work]$
[server@localhost work]$ more sample-windows
�v���O���������ɂ����Ă
�ϐ��Ɋi�[�����Ă����̂͒l���̂��̂ł͂Ȃ�
�͒l�̃|�C���^�ł����Ƃ��������������܂��B
[server@localhost work]$
この段階で既に「sample-windows」の文字化けが確認できます。
文字コードの確認コマンドは幾つかありますが、ここでは「nkf」コマンドを使用して確認してみます。
文字コード確認は「nkf -g ファイル名」
[server@localhost work]$
[server@localhost work]$ nkf -g sample-linux
UTF-8
[server@localhost work]$
[server@localhost work]$ nkf -g sample-windows
Shift_JIS
[server@localhost work]$
[server@localhost work]$ nkf -g sample-linux
UTF-8
[server@localhost work]$
[server@localhost work]$ nkf -g sample-windows
Shift_JIS
[server@localhost work]$
sample-linuxの文字コードは「UTF-8」ですが、sample-windowsの文字コードは「Shift-JIS」になって いるのでUTF-8環境では変換が必要になります。nkf結果で「ASCⅡ」が表示されたときには漢字が含まれない共通コードなので変換する必要はありません。