zoukankan      html  css  js  c++  java
  • Shell脚本把文件从GBK转为UTF-8编码

    http://www.jb51.net/article/51308.htm

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    #!/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
  • 相关阅读:
    css 水平垂直居中总结
    计算机网络之应用层详解
    WPF 中 InitializeComponent 不存在解决方案
    [翻译]lithium 快速上手(QuickStart)
    [翻译]lithium 安装
    [翻译]lithium介绍
    [模板]离散化
    [总结]中位数及带权中位数问题
    [总结]Floyd算法及其应用
    [模板]SPFA判负环
  • 原文地址:https://www.cnblogs.com/benmm/p/4001610.html
Copyright © 2011-2022 走看看