将一个目录下的GB2312文件批量转换为UTF-8的方法
安装enca和iconv(来自libc-bin包),enca用以检测文件编码,iconv用于转换。
(如果你是在Windows下,安装一个cygwin,至少安装base category里面所有包。然后安装enca和iconv包。)
真正干活的就是一下几行shell代码
files=`find . -name '*.java' | xargs enca -L zh | grep GB2312 | cut -d: -f1`
for f in $files; do
iconv -f GBK -t UTF-8 $f > $f.utf && mv -f $f.utf $f && echo "$f done"
done
enca根据指定的语言(-L zh)来检测编码,但也有可能不对的时候,此时iconv就会失败,这时再手工搞搞就行了。

浙公网安备 33010602011771号