最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

shell實現(xiàn)字符編碼轉(zhuǎn)換工具分享

 更新時間:2014年03月05日 16:26:16   作者:  
這篇文章主要介紹了shell實現(xiàn)的字符編碼轉(zhuǎn)換工具,支持UTF-8轉(zhuǎn)GBK和GBK轉(zhuǎn)UTF-8,需要的朋友可以參考下

復(fù)制代碼 代碼如下:

#!/bin/bash

: << mark
轉(zhuǎn)碼工具,支持UTF-8轉(zhuǎn)GBK和GBK轉(zhuǎn)UTF-8
孔令飛@2012-05-07
mark

#set -x

scode="gbk"
dcode="utf-8"

function Usage()
{
 cat << EOF
Usage: conv [OPTIONS] [DIR]
[-u] GBK to UTF-8
[-g] UTF-8 to GBK
EOF
 exit 1
}


#將當(dāng)前目錄下所有普通文件進(jìn)行轉(zhuǎn)碼 GBK to UTF-8
function g2u()
{
 local dir=$1
 printf "Convering $dir ......"
 for file in $(ls $dir)
 do
  file="$dir/$file"
  if [ -f $file ];then

   coding=$(file -b $file | cut -d ' ' -f1)

   #進(jìn)行轉(zhuǎn)碼
   if [ "$coding" = "ISO-8859" ];then
    local tmpfile=$(mktemp)
    Fright=$(stat -c %a $file)
    Fuser=$(stat -c %U $file)
    Fgro=$(stat -c %G $file)
    iconv -f $scode -t $dcode $file > $tmpfile || Usage
    mv $tmpfile $file &&
    chmod $Fright $file
    chown $Fuser:$Fgrp $file
   fi
  fi
 done
 printf "      done\n"
}

function u2g()
{
 local dir=$1
 printf "Convering $dir ......"
 for file in $(ls $dir)
 do
  file="$dir/$file"
  if [ -f $file ];then

   coding=$(file -b $file |cut -d ' ' -f1)

   #進(jìn)行轉(zhuǎn)碼
   if [ "$coding" = "UTF-8" ];then
    local tmpfile=$(mktemp)
    Fright=$(stat -c %a $file)
    Fuser=$(stat -c %U $file)
    Fgro=$(stat -c %G $file)
    iconv -f $dcode -t $scode $file > $tmpfile || Usage
    mv $tmpfile $file &&
    chmod $Fright $file
    chown $Fuser:$Fgrp $file
   fi
  fi
 done
 printf "      done\n"
}

[ $# -ne 2 ] && Usage

while getopts ug opt
do
 case $opt in
  u) echo "Convert gbk coding to utf-8 ...."
  for dir in $(find $2 -type d)
  do
   g2u $dir
  done

  g) echo "Convert utf-8 coding to gbk ...."
  for dir in $(find $2 -type d)
  do
   u2g $dir
  done

  *) Usage
  exit 1

 esac
done

exit 0

相關(guān)文章

最新評論

平武县| 施甸县| 澜沧| 隆回县| 四平市| 女性| 兰考县| 奉贤区| 册亨县| 阜平县| 南溪县| 河西区| 平和县| 荔浦县| 靖远县| 伊金霍洛旗| 象州县| 贡山| 衡水市| 德安县| 长武县| 襄汾县| 杨浦区| 永春县| 建瓯市| 九江县| 景德镇市| 娱乐| 闻喜县| 辽宁省| 大城县| 彩票| 涞源县| 天峻县| 甘德县| 景洪市| 都匀市| 平顶山市| 金湖县| 当涂县| 濉溪县|