2014年3月21日金曜日

Linux: 複数の html ファイルの文字コードを一括変換

シェルスクリプトで複数の HTML 内の文字コードを一括で変換する。
ここでは Shift_JIS の html ファイルを UTF-8 にしてみる。
<meta> 要素の charset も変換する。
#!/bin/sh
for html in `ls *.html`
do
    iconv -f SHIFT-JIS -t UTF-8 $html > ${html}_utf8
    mv ${html}_utf8 $html
    sed -e "s/Shift_JIS/UTF-8/" $html > ${html}_utf8
    mv ${html}_utf8 $html
done

iconv コマンドでファイルの文字コードを変換し、
その後 sed コマンドで <meta> の文字コード指定を Shift_JIS から UTF-8 にしている。
シェルスクリプト実行時のディレクトリ内の html ファイル全てに適用される。

0 件のコメント:

コメントを投稿