当前位置: 操作系统/服务器>linux
Shell脚本把文件从GBK转为UTF-8编码
来源: 互联网 发布时间:2014-10-17
本文导语: 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 n" elif [ ! -e "$path" ] ; then echo "nERROR: destination: $path does not exist.n" fi if [ -f ...
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 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
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。