最近のLinuxはUTF8が標準になっていますが、ちょっと昔のファイルはEUCだったりします。UTF8に変換したい場合、一つずつ変換してもいいですが、大量ファイルがあると面倒なので、一括で変換する方法です。
nkf編
$ mkdir utf8 $ for i in `ls -I utf8`; do echo $i; nkf -d -w80 $i > utf8/$i ; done
nkf : -d : LF(UNIX)に変換 -w80 : UTF8に変換
ls : -I utf8 : utf8というファイル名やディレクトリ名を出力しない
iconv編
iconvはうまく変換できずにエラーになる場合があるようです。 また、改行コードは変換できません。
$ mkdir utf8 $ for i in `ls -I utf8`; do echo $i; iconv -f EUC-JP -t UTF9 $i > utf8/$i ; done
iconv : -f インプットファイルのコード -t アウトプットのコード