Python快速检测配置文件是否变更
分享背景:
当项目非常多时随之而来的配置文件也会变得非常多,而且越发的复杂,有时候上线后才知道线上环境的配置文件不对,那么我们如何提前来检测到配置文件有改动了,本文将给你提供一个可以检测的手段。代码如下所示
1.导入包并指定目录 import hashlib import os from qqAnalyse.conndb import conndb #定义要处理md5值的目录 path="D:toolelasticsearch-head-masterelasticsearch-head-master"
2.初始化配置文件的md5值并入库 #初始化配置文件的md5值并入库 def init_md5(): filelist = [] filelist = get_file(path, filelist) for i in range(len(filelist)): md5v=get_md5_file(filelist[i]) insert_sql="INSERT INTO mdFiveFile (filename,filemd) VALUES (""+filelist[i]+"",""+str(md5v)+"");" db = conndb() db.execute_sql(insert_sql)
3.检测新配置文件的md5值是否变化 #检查新的配置文件md5值是否有改变,有改变则打印出来 def check_md5(): filelist = [] filelist = get_file(path, filelist) for i in range(len(filelist)): md5v = get_md5_file(filelist[i]) selectsql = "select filemd from mdFiveFile where filename="" + filelist[i] + "";" # print(selectsql) db = conndb() md5=db.select_sql(selectsql)[0] if(md5!=md5v): print(str(filelist[i])+"--- please check the file,maybe it"s update") else: print("the check is ok")
4.文件进行md5加密处理 #针对传入的文件计算md5的值 def get_md5_file(file_name): with open(file_name, "rb") as fp: data = fp.read() # print(data) file_md5= hashlib.md5(data).hexdigest() return file_md5
5.遍历指定目录下文件 #遍历上面指定目录下的所有文件 def get_file(path,filelist): file_list = os.listdir(path)# 首先遍历当前目录所有文件及文件夹 # print(file_list) for file in file_list: cur_path = os.path.join(path, file)# 利用os.path.join()方法取得路径全名,并存入cur_path变量,否则每次只能遍历一层目录 if os.path.isdir(cur_path): get_file(cur_path,filelist) else: if(str(file).endswith("bak")): filelist.append(cur_path) return filelist
6.代码运行入口 if __name__ == "__main__": # init_md5() check_md5()
总结:
我们首先要确定我们要检测的配置文件,然后将它的当前的md5值进行初始化到数据库,当下次发布前我们可以针对性的进行一次检测,发现有变更就会提示出来,这样就可以做到提前知晓变更的配置文件,再人工介入进行重点检查。
米家空气净化器4小户型的性价比之选转眼间又来到了秋天,身处北方的小伙伴早晚已经能明显感觉到一丝凉意,物业也开始征收取暖费了,每到这个时候就会开始担心冬季的空气污染问题。每天忙碌于工作,下班路上甚至回到家里都不能呼吸
超频三光愈2机箱装机体验开放式侧透丰富IO扩展自从上半年搬家以后就很少再折腾电脑了,一是可能过了爱折腾的年纪,二是精力和时间有些跟不上。前段时间升级了十一代处理器,顺带着主板也得换换,索性就连机箱一起换了。最近几年,超频三这个
英雄联盟手游其实也需要外设帮忙,北通G2手柄上手如今移动端设备逐渐成为人们主要的娱乐工具,在手机上玩游戏不仅方便,也不用一直坐在电脑前面,可以说随时随地利用碎片化的时间就能玩上一局,工作之余缓解压力,和同时朋友增进感情,都是不错
幸运的人一生都被童年所治愈,而不幸的人,一生都在治愈童年原生家庭一词我想大概绝大部分的人都不陌生吧,但也许也仅停留在听说过这一层面,度娘对这一词语的解释是原生家庭是指自己出生和成长的家庭。这家庭的气氛,传统习惯,子女在家庭角色上的学习对
超频三七防芯BR600安全电源七重安全防护无惧恶劣环境在选购电脑的时候,人们往往把挑选的经历和预算放在CPU显卡这些大件上,却忽视了像电源这些看似并不起眼的零部件。而事实上,想要电脑高效稳定的运行,稳定的供电也是必不可少的。最近趁着给
藏陈情十三年,后孑然一生江澄和魏无羡到底谁欠了谁(上)我叫江澄,我有一个好兄弟兼竹马,他叫魏无羡,虽然后来我把他弄丢了。老实说,其实我应该是不喜欢魏无羡的,毕竟他一来莲花坞,爹爹就送走了一直陪我的小狗妃妃和茉莉。姐姐也喜欢他,什么都帮
自用好物推荐梵洁诗VC时光密钥粉,你的黑色痘印有救了前段时间跟风,在网上学大神刷酸,看了很多教程,做了很多功课,然后囤了Theordinary家30的果酸2的水杨酸和5的乳酸2的透明质酸。一开始刷的是30浓度的,刷了大概两个星期左右
多肉菜鸟的一些心得首先,多肉买回来不要急着上盆,一定要先修根。修根狠一些也没事的,多肉没根都能种,比如砍头苗。我有个乌木,两面没长,我就把根全剪了,直接坐土上。一样活了其次,能不浇水就不要浇水。你要
6个让你幸福感爆棚的电子科技产品1戴森加湿器2021年了,正值三伏天,让家中充满热带雨林的感觉智能温度控制系统,同时测量温度和湿度,设置合适的湿度,让你有一个舒适的环境。双重功能,全年使用,冬天加湿均匀覆盖,夏天
6个让你幸福感爆棚的电子科技产品1戴森加湿器2021年了,正值三伏天,让家中充满热带雨林的感觉智能温度控制系统,同时测量温度和湿度,设置合适的湿度,让你有一个舒适的环境。双重功能,全年使用,冬天加湿均匀覆盖,夏天
国丰监控安装实例,监控安装不用找师傅,只需注意这一步就可以这是我们需要准备的设备,四路硬盘录像机一个,四个200W网络摄像机(其实客户就用两个,预防万一)一个五路的交换机,线材电源盒水晶头等这是硬盘录像机,用的中维世纪四路的网络硬盘录像机