国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

shell腳本中使用iconv實(shí)現(xiàn)批量文件轉(zhuǎn)碼的代碼分享

2019-10-26 18:41:32
字體:
供稿:網(wǎng)友

在開發(fā)中,我們經(jīng)常需要對(duì)N多文件編碼進(jìn)行更改,iconv只能對(duì)單文件的進(jìn)行更改,怎么辦呢?我們寫一個(gè)shell腳本來解決這個(gè)問題。

例子一:使用shell腳本實(shí)現(xiàn)批量轉(zhuǎn)碼的操作。

#!/bin/sh #convertCodeFilePath=$1 fromCode=$2 toCode=$3  for i in {1..1} do   [ -f $convertCodeFilePath ]   if [ $? -eq 0 ]   then     iconv -f $fromCode -t $toCode -c -o $convertCodeFilePath $convertCodeFilePath     if [ $? -ne 0 ]     then       echo $convertCodeFilePath "=>" convert code failed.          else       echo $convertCodeFilePath "=>" convert code success.     fi     break;   fi      [ -d $convertCodeFilePath ]   if [ $? -ne 0 ]   then     break;   fi        dir=`ls $convertCodeFilePath | sort -d`    for fileName in $dir   do     fileFullPatch=$convertCodeFilePath/$fileName          fileType=`echo $fileName |awk -F. '{print $2}'`          [ -d $fileName ]     if [ $? -eq 0 ]     then       continue     fi          if [ $fileType != 'sh' ] && [ $fileType != 'py' ] && [ $fileType != 'xml' ] && [ $fileType != 'properties' ] /     && [ $fileType != 'q' ] && [ $fileType != 'hql' ] && [ $fileType != 'txt' ]     then       continue     fi          iconv -f $fromCode -t $toCode -c -o $fileFullPatch $fileFullPatch     if [ $? -ne 0 ]     then       echo $fileName "=>" convert code failed.       continue     else       echo $fileName "=>" convert code success.     fi       done done

使用方式:

sh convertCode.sh /home/sam/data gbk utf-8

例子二:簡(jiǎn)潔版

用法示例:

cd ~/workspace/XXXProject ~/iconv_shell.sh ./ *java

好了,直接上代碼~~

#!/bin/bash if [ "$#" != "2" ]; then   echo "Usage: `basename $0` dir filter"   exit fi dir=$1 filter=$2 echo $1 for file in `find $dir -name "$2"`; do   echo "$file"   iconv -f gbk -t utf8 -o $file $file done

這里還有些修改的余地,比如源和目標(biāo)編碼應(yīng)該作為參數(shù),我暫時(shí)沒有這個(gè)需求,懶得寫了。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 寿阳县| 邮箱| 苗栗市| 巴彦淖尔市| 开封县| 东乌| 旅游| 保康县| 兴化市| 英吉沙县| 巍山| 平湖市| 汕尾市| 江油市| 平凉市| 达孜县| 南丹县| 稻城县| 武陟县| 铜山县| 虎林市| 新晃| 星子县| 双辽市| 麦盖提县| 石城县| 曲阳县| 靖西县| 镇坪县| 旺苍县| 长治市| 伊通| 天祝| 六盘水市| 霍州市| 同心县| 池州市| 天全县| 屯门区| 南皮县| 黑龙江省|