Home > 文字コード統一ワンライナー

文字コード統一ワンライナー

  • Posted by: TETRA
  • 2009年1月20日 22:07

指定したファイル群の文字コードを自動認識して変換する Perl ワンライナーです。

shiftjis or eucjp or UTF-8 (実はその他にも ascii 、BOM付き UTF-16/32)を自動判定し、適当な文字コード(この場合は UTF-8)に変換します。

perl -i -MEncode -MEncode::Guess -n0e ' print encode( "utf8", guess_encoding( $_, qw/shiftjis eucjp/ )->decode( $_ ) )'

Windows + ActivePerl、Linux (Mac含む) のどこでも動くと思います。

ワンライナーで検索してきた方なら説明不要な感じですね。実際に変換するファイルを末尾に列挙して下さい。バッククオートを利用して find -name '*.htm*' とかすると Cool ですね。Windows + ActivePerl な場合は 地道に *.html */*.html */*/*.html ... と指定します。

perl -i -MEncode -MEncode::Guess -n0e 'print encode( "utf8", guess_encoding( $_, qw/shiftjis eucjp/ )->decode( $_ ) )' `find -name '*.html'`

ちなみに encode( "utf8", guess_encoding( が出力文字コード、qw/shiftjis eucjp/ が入力文字コードの候補です。

Comments:0

Comment Form

画像の中に見える文字を入力してください。

Trackbacks:0

TrackBack URL for this entry
http://tetlist.info/mt/mt-tb.cgi/51
Listed below are links to weblogs that reference
文字コード統一ワンライナー from TETLIST

Home > 文字コード統一ワンライナー

Search
Feeds

Return to page top