在Linux系统下把文件转换为UTF

转换环境Linux系统,整个项目要转换为多语言版本,所有文件储存格式由原来GB2312转换为UTF-8编码,为了方便,借助iconv命令写了下面脚本:

#!/bin/bash

if [ -z "$1" ];
then
echo "Please input a directory name";
exit 1;
fi

if [ -z "$2" ];
then
echo "Please input a the file conversion";
exit 1;
fi

echo -n >error.log
for i in `find $1 -name "$2"`
do
# echo $i
if [ -f $i ];then
iconv -f gb2312 -t utf8 $i -o tmp.txt 2>>error.log;
if [ $? -eq 0 ];
then
echo "$i is converted successfully!"
cp tmp.txt $i
else
echo -n "The file is $i , `date +'%Y-%m-%d %H:%M:%S'`">>error.log
echo >>error.log
fi
#echo $i;
fi
done
if [ -f tmp.txt ];then
rm -f tmp.txt>/dev/null;
fi

exit $?

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzydyj.html