Shell脚本把文件从GBK转为UTF-8编码

 更新时间:2014年06月20日 10:21:48   投稿:junjie  
这篇文章主要介绍了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脚本创建指定大小文件的测试数据

    Shell脚本创建指定大小文件的测试数据

    这篇文章主要介绍了Shell脚本创建指定大小文件的测试数据,本文同时给出使用DD命令和Shell脚本解决这个需求,给出的脚本功能更加强大,需要的朋友可以参考下
    2015-03-03
  • linux压缩常用命令小结

    linux压缩常用命令小结

    这篇文章主要介绍了linux压缩常用命令知识,包括压缩解压缩方面的内容,本文给大家介绍的非常详细,需要的朋友参考下吧
    2017-03-03
  • Linux 命令之rsync命令详解

    Linux 命令之rsync命令详解

    rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。下面通过本文给大家分享Linux 命令之rsync命令详解,需要的朋友参考下吧
    2017-08-08
  • linux 操作 ftp 常用命令

    linux 操作 ftp 常用命令

    ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里详细介绍linux 操作 ftp 常用命令,需要的朋友参考下吧
    2017-12-12
  • 判断Linux Shell环境变量是否存在

    判断Linux Shell环境变量是否存在

    这篇文章主要介绍了Linux Shell 判断环境变量是否存在的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-03-03
  • scp 将数据从一台linux服务器复制到另一台linux服务器

    scp 将数据从一台linux服务器复制到另一台linux服务器

    这篇文章主要介绍了scp 将数据从一台linux服务器复制到另一台linux服务器,需要的朋友可以参考下
    2017-09-09
  • Linux shell数组与关联数组的用法实例

    Linux shell数组与关联数组的用法实例

    今天小编就为大家分享一篇关于Linux shell数组与关联数组的用法实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • 详解Shell cut用法

    详解Shell cut用法

    cut是一个选取命令,就是将一段数据经过分析,取出我们想要的。一般来说,选取信息通常是针对“行”来进行分析的,并不是整篇信息分析的。本文重点给大家介绍Shell cut用法,感兴趣的朋友一起看看吧
    2017-10-10
  • 关于shell的几个不为人知却十分有用的命令分享

    关于shell的几个不为人知却十分有用的命令分享

    这篇文章主要介绍了关于shell的几个不为人知却十分有用的命令,需要的朋友可以参考下
    2016-03-03
  • Shell脚本调快调慢系统时间(测试服务器时使用)

    Shell脚本调快调慢系统时间(测试服务器时使用)

    这篇文章主要介绍了Shell脚本修改系统时间(测试服务器时使用),本文脚本用于调快或者调慢系统时间,需要的朋友可以参考下
    2014-12-12

最新评论