nkfコマンドの罠

ツールを使って文字コードが、正しく変換されているか確認。
そこで、nkfコマンドの自動判別機能を用いることにした。
もちろん、ブラウザで表示して確認しても良かったけれどLinuxっぽい方法でしたかったので。

SJISファイル(before)をEUC-Pファイル(after)に変換して、いざ確認!
#nkf -g after
ACSII

ん…?なんだそれ

変換ができてないのか、もともとのファイルが悪いのかをはっきりさせるため変換前ファイルを確認
#nkf -g before
ACSII

…は?

ちなみにbeforeファイルの中身は、Windows上のエディタでSJISを指定して作ったファイルで
「test」
と打っただけ。

beforeの確認を怠ったが為に、ここまでたどり着くまでにめっちゃ時間かかってしまった…

ならば、beforeをSJISに変換すればいいんじゃ!
#nkf -j before > after
*SJISへの変換はオプション -j なしでもできます。
確認
#nkf -g after
ACSII

…え?

変換できません。
どうやら根本的に間違えているようです。

同じような現象の人がいました。
http://questionbox.jp.msn.com/qa4814186.html

なるほーファイルに日本語が含まれていないとだめなんですね。

ファイルの中身を「てすと」にして再度実行。
#nkf -g before
Shift_JIS

あーできた!よかった!

今までどうやっていたのか、めっちゃ不思議…