前言
matlab打包成exe时发现中文乱码,查找发现是gbk编码问题,找半天没找到合适的批量转换编码工具,就搞了个简单的shell来实现
准备工作
windows上有安装git bash命令行的话可以直接跑sh脚本,没有的话下一个很快。linux可以直接运行
代码
#!/bin/sh
#判断是否为某种编码
judge()
 {
   local temp=`iconv -f $2 $1 1>/dev/null 2>/dev/null && echo 'true'`;
   echo $temp
  if [ "$temp" = 'true' ]; then
    return 0;
  fi;
  return -1;
 }
 
# 目录,文件名可以指定
# for file in `find "./" -name "*.m"`;
 for file in `find "${1:-./}" -name "${2:-*}"`;
 do
 if  $(judge $file gbk); then
     echo convering : $file
     iconv -f GBK -t utf-8 $file > $file.temp
     mv $file.temp $file
   fi;
 done
 echo DONE
 
运行
方式一
将以上代码复制到记事本里
 更改代码中目录和文件后缀
 保存到待操作目录
 后缀命名为.sh
 直接双击运行
 
方式二
git 命令行中运行
第一个参数为目录 默认当前目录
 第二个参数文件名 默认为全部文件,可指定文件后缀如.php 等
./a.sh ./ '*.m'
 



















![[附源码]SSM计算机毕业设计在线二手车交易信息管理系统JAVA](https://img-blog.csdnimg.cn/1b459753ce0e47b390d8112b3f4c024f.png)
