shell转码脚本
20191017
!/bin/bash #iconv -f GB2312 -t utf-8 "filename.sql" -o "newfilename.sql" #将GB2312文件转换为UTF-8文件 #1个参数: # filename:单个文件名称 # 要保证源文件确实是gb2312编码,否则转换之后为乱码!!! # 不能确定的就一个一个打开看看,一个一个进行转码 # 如何自动识别编码? filename=$1 nump=$# function main(){ #临时文件夹,保存原始文件 if [ ! -d ./temp_dir ] then mkdir ./temp_dir fi #单个文件,有一个参数 let flag=$nump if [[ ${flag} = 1 ]] then mv ${filename} ./temp_dir/${filename} iconv -f GB2312 -t utf-8 -c ./temp_dir/${filename} -o ${filename} echo "succeed!" exit 0 fi #多个文件,无参数 if [[ ${flag} = 0 ]] then cd $(dirname $0); pwd for fileitem in * do if [ -f ${fileitem} ] then #echo ${fileitem} mv ${fileitem} ./temp_dir/${fileitem} iconv -f GB2312 -t utf-8 -c ./temp_dir/${fileitem} -o ${fileitem} fi done echo "succeed!" fi } main