六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 54|回复: 0

文件夹差异文件对比工具

[复制链接]

升级  54.33%

111

主题

111

主题

111

主题

举人

Rank: 3Rank: 3

积分
363
 楼主| 发表于 2013-1-15 02:34:13 | 显示全部楼层 |阅读模式
# -*- coding:UTF-8 -*-'''Created on 2010-4-30@author: shiyong'''import osclass Compare(object):    '''            文件夹比较工具            功能:目前只未比较文件的名称和大小,未比较md5    '''    def __init__(self):        '''        Constructor        '''        #遍历比较      def visit(self,newpath,oldpath):                if os.path.isdir(newpath) and os.path.isdir(oldpath):            #            print '比较'+newpath+'和'+oldpath            newdirs = os.listdir(newpath)#新文件夹列表            olddirs = os.listdir(oldpath)#原文件夹列表            for filef in newdirs:                                nfpath = newpath+'\\'+filef#新文件中子文件或子文件夹得绝对路径                ofpath = oldpath+'\\'+filef#原文件中子文件或子文件夹得绝对路径                if filef not in olddirs:#在原文件夹中不存在同名的                    print '不存在'+ofpath                else:#存在同名                    #比较的都是文件                    if os.path.isfile(nfpath) and os.path.isfile(ofpath):                        if os.path.getsize(nfpath) != os.path.getsize(ofpath):                            print '不存在'+ofpath+'原因:文件大小不一致'                                        #比较的都是文件夹                    elif os.path.isdir(nfpath) and os.path.isdir(ofpath):                        self.visit(nfpath, ofpath)                                            else:                        pass                    else:            print '请检查要比较的文件夹是否存在'            return        if __name__ == '__main__':          c = Compare()    c.visit('D:\i-dong','D:\Ubuntu')
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表