字符编码转换的脚本

程序中遇到汉字真是麻烦,弄的程序原本是gbk或者是gb2312的。现在服务器上都是utf-8,汉字全是乱码。只好写个shell,来自动转换。

#!/bin/bash
for i in $(find $1)
do
        file $i |grep text 1>/dev/null 2>&1

        if [ $? -eq 0 ] ;then
        echo $i
        basename=$(basename $i)
        echo basename = $basename
        path=${i%$basename}
        echo path=$path
        iconv -f gb2312 -t utf-8 $i >$path/${basename}.utf
        cat $path/${basename}.utf>$i
        fi
done

有两个难点,就是在判断是不是文本文件还有原来的编码的问题。先写成这样,以后再改!

随机文章:

发表评论