python3 实现对比conf 文件差

2020-01-03 10:50:10 浏览数 (1)

代码语言:javascript复制
用法: ./conf.py  nginx1.conf  nginx2.conf > diff.html

conf.py

#!/usr/bin/python
import difflib
import sys
####   Usage: compare_nginx.conf.py filename1 filename2 >diff.html
try:
    textfile1 = sys.argv[1]
    textfile2 = sys.argv[2]
except Exception as e:
    print("Error: %s" % e)
    print("Usage: compare_nginx.conf.py filename1 filename2 >diff.html")
    sys.exit()

def readfile(filename):
    try:
        fileHandle = open(filename, 'r',encoding='gbk')
        text = fileHandle.read().splitlines()
        fileHandle.close()
        return text
    except IOError as error:
        print("Read file Error: %s" % error)
        sys.exit()

if 'textfile1' =="" or 'textfile2'=="":
    print("Usage: compare_nginx.conf.py filename1 filename2 diff.html")
    sys.exit()

text1_lines = readfile(textfile1)
text2_lines = readfile(textfile2)

d = difflib.HtmlDiff()
print(d.make_file(text1_lines, text2_lines))

0 人点赞