日本語のメールを端末で見るときに

メーラとの相性が悪いためgmailを利用している。だけれどもgmailからpopで取得に行く間隔がかなり広いため最新のメールをチェックするのが大変だったりする。

なのでメールをmtaが走ってる端末で確認することがしばしば。そういったときに直面する問題が文字コードの問題である。

おおよそ大多数の日本語を含むメールはJISコード(ISO-2022-JPとも呼ばれる、逆かな?)でエンコードされている。これをUTF-8に変換するコマンドを調べた。

まずはメールの文字コードを調べる。

shell> grep charset mailfile
Content-Type: text/plain; charset=iso-2022-jp

ここで出てきたcharsetの項目が文字コードになる。

これをiconvを利用して変換してやる。iconvの取り扱う文字コードのリストを調べる

shell> iconv -l | grep 2022

ISO-2022-JP CSISO2022JP
ISO-2022-JP-1
ISO-2022-JP-2 CSISO2022JP2
ISO-2022-CN CSISO2022CN
ISO-2022-CN-EXT
ISO-2022-KR CSISO2022KR
ISO-2022-JP-2004 ISO-2022-JP-3

で、実際にためす。

shell> cat mailfile | iconv -f ISO-2022-JP -t UTF-8 | more

略

ちゃんと見れた!

コメントを残す