最近公司在做tfs迁移,后面要用新的ip地址去访问tfs 拉取代码  ,所以原来发布脚本中.bat类型的脚本中的的ip地址需要更换

简单说下我们发布脚本层级目录 :每个服务站点下都会有一个发布脚本 .bat文件或.sh文件

所有站点保存在本地某个文件夹下   目录结构如图:

先发代码  后面在详说下过程中遇到的坑:

运行后结果

踩坑回顾:

刚开始我都是以utf-8编码模式去读写,发现有的脚本会处理成功 然后就会报错  报错如下:

'utf8' codec can't decod

大概意思就是 utf-8编码无法解析读取的文件内容

查阅了下资料  说是windows编码方式是gbk ,ok  我把utf-8的编码方式改成了gbk   觉得这次应该差不多了 走起运行 果不其然  正常的处理了几个文件后  又报错了:

'gbk' codec can't decod

@#¥%@#%@#%#@%

还是编码方式的问题

好吧  我恶补了下文件的编码类型及编码类型的获取    知道了   chardet  模块    写了个方法识别文件的编码方式

def  recognition(path):
file = open(path, "rb")
buf = file.read()
result = chardet.detect(buf)
return result['encoding']

随机找了几个脚本文件去跑  发现有的.bat文件的编码类型是utf-8  有的是GB2312  还有的是ISO-8859-9   也是够奇葩的

找到问题所在了  当时想了两个解决方案

1 统一文件编码方式 然后再去处理

2 判断文件的编码方式  什么编码方式  就用该编码方式去处理

当时觉得方案1 比较极端  所以采用了方案2

可以发现 方案2我对编码方式为ISO-8859-9 的 直接pass掉了   。虽然也是.bat的文件    但是这种编码方式的文件并不是我们的发布脚本

ok  没了

最新文章

  1. 用遗传算法GA改进CloudSim自带的资源调度策略
  2. Unity3D 搭建优雅的UI框架
  3. [整理]Centos6.5 + hadoop2.6.4环境搭建
  4. HTML5 canvas处理图片的各种效果,包括放大缩小涂鸦等
  5. 烂泥:nagios学习(四):pnp4nagios图形化绘制nagios数据
  6. svn强制解锁的几种做法
  7. ooofc.com域名备案问题导致无法正常访问临时解决方案
  8. AngularJS学习笔记1
  9. nginx 中文文件名显示问题
  10. Scheme实现二叉查找树及基本操作(添加、删除、并、交)
  11. Win7系统如何复制CMD命令提示符框中的内容
  12. Python2和Python3安装教程
  13. AppImage格式安装包使用
  14. 监控工具之zabbix server3.4 部署配置
  15. 重新认识Javascript的一些误区总结
  16. mybatis逆向工程总结工具类
  17. VC++ 知识点
  18. modelsim 仿真xilinx fir ip
  19. 这几天添加ccbi 出现的问题
  20. BZOJ 2120 数颜色 【带修改莫队】

热门文章

  1. 在Tomcat中配置单点登录
  2. Centos7.3下mysql5.7.18安装并修改初始密码的方法
  3. zabbix3.2_yum官方文档centos 7版
  4. js中的深拷贝与浅拷贝
  5. Linux(CentOS)挂载NTFS格式的U盘、移动硬盘
  6. iOS-主线程刷新UI【+单例】
  7. thinkphp使用自带webserver
  8. windows单节点下安装es集群
  9. RAID知识总结[转]
  10. MIB Browser如何导入已编译的mib