Python运维自动化之nginx配置文件对比操作示例


Posted in Python onAugust 29, 2018

本文实例讲述了Python运维自动化之nginx配置文件对比操作。分享给大家供大家参考,具体如下:

文件差异对比diff.py

#!/usr/bin/env python
#
import difflib
import sys
try:
  textfile1=sys.argv[1]
  textfile2=sys.argv[2]
except exception,e:
  print "Error:"+str(2)
  print "Usge: difflib.py file1 file2"
  sys.exit()
def readfile(filename):
  try:
    fileHandle=open(filename,'rb')
    text=fileHandle.read().splitlines()
    fileHandle.close()
    return text
  except IOError as error:
    print ('read file Error:'+str(error))
    sys.exit()
if textfile1=="" or textfile2=="":
  print "usege :difflib.py file1 file2"
  sys.exit()
text1_lines=readfile(textfile1)
text2_lines=readfile(textfile2)
d = difflib.HtmlDiff()
print d.make_file(text1_lines, text2_lines)
#python diff.py nginx1.conf nginx2.conf > diff.html

Python运维自动化之nginx配置文件对比操作示例

利用的是difflib模块,Python2.3以上版本自带的库

Python 相关文章推荐
说一说Python logging
Apr 15 Python
详解Python各大聊天系统的屏蔽脏话功能原理
Dec 01 Python
python交互式图形编程实例(三)
Nov 17 Python
Python 实现还原已撤回的微信消息
Jun 18 Python
python3的url编码和解码,自定义gbk、utf-8的例子
Aug 22 Python
浅谈Python_Openpyxl使用(最全总结)
Sep 05 Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
Sep 17 Python
关于pytorch处理类别不平衡的问题
Dec 31 Python
django 利用Q对象与F对象进行查询的实现
May 15 Python
python rolling regression. 使用 Python 实现滚动回归操作
Jun 08 Python
如何使用python包中的sched事件调度器
Apr 30 Python
python index() 与 rindex() 方法的使用示例详解
Dec 24 Python
python单例模式实例解析
Aug 28 #Python
Python3.7实现中控考勤机自动连接
Aug 28 #Python
python实现遍历文件夹修改文件后缀
Aug 28 #Python
Python绘制正余弦函数图像的方法
Aug 28 #Python
Python logging模块用法示例
Aug 28 #Python
Python异常处理操作实例详解
Aug 28 #Python
Python封装原理与实现方法详解
Aug 28 #Python
You might like
PHP使用xpath解析XML的方法详解
2017/05/20 PHP
Javascript 面向对象 继承
2010/05/13 Javascript
return false;和e.preventDefault();的区别
2010/07/11 Javascript
JSDoc 介绍使用规范JsDoc的使用介绍
2011/02/12 Javascript
JQuery 文本框回车跳到下一个文本框示例代码
2013/08/30 Javascript
javascript中实现兼容JAVA的hashCode算法代码分享
2020/08/11 Javascript
全面了解JS中的匿名函数
2016/06/29 Javascript
jQuery中Chosen三级联动功能实例代码
2017/03/07 Javascript
详解JS中遍历语法的比较
2017/04/07 Javascript
微信小程序使用radio显示单选项功能【附源码下载】
2017/12/11 Javascript
vue页面加载闪烁问题的解决方法
2018/03/28 Javascript
解决element UI 自定义传参的问题
2018/08/22 Javascript
javascrit中undefined和null的区别详解
2019/04/07 Javascript
在element-ui的select下拉框加上滚动加载
2019/04/18 Javascript
js实现指定时间倒计时效果
2019/08/26 Javascript
利用Python演示数型数据结构的教程
2015/04/03 Python
Python实现LRU算法的2种方法
2015/06/24 Python
Python实现树的先序、中序、后序排序算法示例
2017/06/23 Python
python中import reload __import__的区别详解
2017/10/16 Python
Django高级编程之自定义Field实现多语言
2019/07/02 Python
python目标检测给图画框,bbox画到图上并保存案例
2020/03/10 Python
pyCharm 设置调试输出窗口中文显示方式(字符码转换)
2020/06/09 Python
PyCharm常用配置和常用插件(小结)
2021/02/06 Python
HTML5中的网络存储实现方式
2020/04/28 HTML / CSS
台湾线上百货零售购物平台:friDay购物
2017/08/18 全球购物
SQL里面如何插入自动增长序列号字段
2012/03/29 面试题
西门豹教学反思
2014/02/04 职场文书
社区庆中秋节活动方案
2014/02/07 职场文书
《跨越百年的美丽》教学反思
2014/02/11 职场文书
分居协议书范本(律师见证版)
2014/11/26 职场文书
毕业生个人自荐书
2015/03/05 职场文书
钢琴师观后感
2015/06/12 职场文书
2016庆祝教师节新闻稿
2015/11/25 职场文书
Golang标准库syscall详解(什么是系统调用)
2021/05/25 Golang
深入理解redis中multi与pipeline
2021/06/02 Redis
Nginx流量拷贝ngx_http_mirror_module模块使用方法详解
2022/04/07 Servers