批量转换目录下文件编码的shell脚本代码

Jacinda ·
更新时间:2024-11-10
· 829 次阅读

一例批量转换目录下文件编码的shell脚本代码。

需求描述:
由于从window转linux过来,很多原来win下的gbk文件需要转换成utf8。

以下脚本仅判断非utf8文件转换成utf8文件,并且默认非utf8文件为gbk,如果文件类型不一致需要修改。

例子:

代码如下:
#!/bin/bash
# File Name: iconv.sh
# Author: wanggy
# site: www.jb51.net
#
show_file()
{
    for file in `ls $1`
    do
        if [ -d $1"/"$file ];then
            #目录递归调用show_file函数
            show_file $1"/"$file
        else
            #文件
            echo $1"/"$file
            file_type=`file $1"/"$file`
            type=`echo $file_type |grep UTF-8`
            if [ -z "$type" ];then
                echo "为空非utf-8编码,转换"
                iconv -f gbk -t utf8 $1"/"$file -o $1"/"$file
            else
                echo "utf8编码不用转换"
            fi
        fi
    done
}
path=./shell
show_file $path

您可能感兴趣的文章:shell对比文件内容脚本分享linux下保留文件系统下剩余指定数目文件的shell脚本shell去掉文件中空行(空白行)的方法详解shell判断文件,目录是否存在或者具有权限的代码使用ShellClass获取文件属性详细信息的实现方法判断文件是否存在的shell脚本代码合并一个文件夹下多个文件内容的单行shell命令查找目录下同名但不同后缀名文件的shell脚本代码在指定目录查找指定后缀文件的shell脚本代码shell查找当前目录下大于1M的文件的三种方法分享后台实时分流文件的shell脚本找出文件中包含指定字段的文件的shell脚本Visual Style中的shellstyle.dll文件修改方法Byshell后门:无进程无DLL无硬盘文件shell替换文件中的文件路径脚本分享



编码 shell脚本 shell

需要 登录 后方可回复, 如果你还没有账号请 注册新账号