Python 快速检测配置文件是不是变更
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 快速检测配置文件是不是变更相关的知识,希望对你有一定的参考价值。
参考技术A分享背景:
当项目非常多时随之而来的配置文件也会变得非常多,而且越发的复杂,有时候上线后才知道线上环境的配置文件不对,那么我们如何提前来检测到配置文件有改动了,本文将给你提供一个可以检测的手段。代码如下所示
1.导入包并指定目录
2.初始化配置文件的md5值并入库
3.检测新配置文件的md5值是否变化
4.文件进行md5加密处理
5.遍历指定目录下文件
6.代码运行入口
总结:
我们首先要确定我们要检测的配置文件,然后将它的当前的md5值进行初始化到数据库,当下次发布前我们可以针对性的进行一次检测,发现有变更就会提示出来,这样就可以做到提前知晓变更的配置文件,再人工介入进行重点检查。
检测目录文件变更数量及内容变更
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin/:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
dir=/home/
date_one_h=$(date +%Y%m%d%H -d ‘-1 hours‘)
old_file=/root/$(date +%Y%m%d -d ‘2 day ago‘)source.file
source_file=/root/$(date +%Y%m%d)source.file
new_file=/root/Desktop/$(date +%Y%m%d%H)new.file
change_content=/root/Desktop/$(date +%Y%m%d%H)diff.file
old_change_content=/root/Desktop/$(date +%Y%m%d%H -d ‘2 day ago‘)diff.file
if [ -s $source_file ] ;then
echo the file content alrealy exists!
else
#find $dir -print0 | xargs -0 du -sb >$source_file
ls -lR $dir >$source_file
echo "$source_file File content has been written!"
fi
if [ -s $new_file ] ;then
echo the $new_file content alrealy exists!
else
#find $dir -print0 | xargs -0 du -sb >$new_file
ls -lR $dir >$new_file
echo "$new_file File content has been written!"
fi
diff_input=$(diff $source_file $new_file)
if [[ -z $diff_input ]];then
echo "Nothing change"
else
echo "Here is the change"
echo "$diff_input">$change_content
fi
rm -rf $new_file
rm -rf $old_file
rm -rf $old_change_content
以上是关于Python 快速检测配置文件是不是变更的主要内容,如果未能解决你的问题,请参考以下文章