Linuxï¼ç´æ¥è¾å ¥vimdiff file1 file2å¯æ¯è¾æ件file1åfile2
window:çæhtmlæ ¼å¼ï¼ç½é¡µæå¼ç´è§ï¼æ§è¡å½ä»¤ï¼python diff.py file1 file2
diff.py代ç
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import sys
import difflib
try:
tfile1=sys.argv[1]
tfile2=sys.argv[2]
except Exception,e:
print "é误ï¼"+str(e)
print "请åç¡®è¾å
¥åæ°ï¼ä¾å¦ï¼python diff.py file1 file2"
sys.exit()
def readfile(filename):
try:
fileHandle=open(filename,'rb')
lines=fileHandle.read().splitlines()
fileHandle.close()
return lines
except IOError as error:
print('读åæ件é误ï¼'+str(error))
sys.exit()
if tfile1=="" or tfile2=="":
print "请åç¡®è¾å
¥åæ°ï¼ä¾å¦ï¼python diff.py file1 file2"
sys.exit()
tfile1_lines=readfile(tfile1)
tfile2_lines=readfile(tfile2)
#d=difflib.HtmlDiff()
#print s.make_file(tfile1_lines,tfile2_lines)
#为äºçæhtmlè½è¯å«ä¸æï¼å¯ç¨ä¸é¢ä»£ç #ä¿®æ¹diff.htmlçç¼ç ï¼å°ISO-8859-1æ¹ä¸ºUTF-8
old_str='charset=ISO-8859-1'
new_str='charset=UTF-8'
d=difflib.HtmlDiff()
q=d.make_file(tfile1_lines,tfile2_lines)
with open('diff.html','w') as f_new:
f_new.write(q.replace(old_str,new_str))
Â