本篇内容主要讲解“Shell脚本怎么把文件从GBK转为UTF-8编码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Shell脚本怎么把文件从GBK转为UTF-8编码”吧!
shell 脚本:
#!/bin/sh
##
## convert file from GB2312 to UTF-8
##
path="$1"
unset opt
if [ "$2" = "force" ]; then
opt="-c -s"
fi
if [ -z "$path" ]; then
echo "nUsage: $0 <file or dir>n"
elif [ ! -e "$path" ] ; then
echo "nERROR: destination: $path does not exist.n"
fi
if [ -f "$path" ] ; then
echo "Converting $path (gbk --> utf-8) ... "
if file "$path"|grep -q UTF-8 >/dev/null ; then
echo "Already converted"
else
iconv -f gbk $opt -t utf-8 "$path" > /tmp/$$.tmp
if [ $? -eq 0 ] ; then
echo "Success"
mv -f /tmp/$$.tmp "$path"
else
echo "Failed"
fi
fi
elif [ -d "$path" ] ; then
path=`echo "$path/"|sed 's//////'`
find "$path" -path "$path.*" -prune -o -type f -print|while read i
do
dir=`dirname $i`
file=`basename $i`
echo "Converting $dir/$file (gbk --> utf-8) ..."
iconv -f gbk -t utf-8 $opt "$i" > /tmp/$$.tmp 2>/dev/null
if [ $? -eq 0 ] ; then
echo "Success"
mv -f /tmp/$$.tmp "$i"
else
echo "Failed"
fi
done
fi
到此,相信大家对“Shell脚本怎么把文件从GBK转为UTF-8编码”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://www.jb51.net/article/51308.htm