• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            清風竹林

            ぷ雪飄絳梅映殘紅
               ぷ花舞霜飛映蒼松
                 ----- Do more,suffer less

            目錄文件比較工具 python

              用于目錄文件的比較,如果有文件的md5值不一樣, 則copy覆蓋。由于寫的很久匆忙,沒有加注釋,但好在代碼很少,如下:

            import sys, os, shutil
            import hashlib

            class FileHash(object):
                
                
            def __hash_file(self, filepath):
                    
            if os.path.exists(filepath):
                        m
            = hashlib.md5()
                        with open(filepath, 
            'rb') as fin:
                            
            while True:
                                data
            = fin.read(8096)
                                
            if not data:
                                    
            break
                                m.update(data)
                            
            return m.hexdigest()
                
                
            def compare_file(self, srcfile, destfile):
                    src_md5
            = self.__hash_file(srcfile)
                    dest_md5
            = self.__hash_file(destfile)
                    isOk
            = (src_md5==dest_md5)
                    
            return isOk

            if __name__ == '__main__':
                file_hash
            = FileHash()
                srcdir  
            =r'E:\game'
                destdir 
            =r'C:\game'
                
            for root, dirs, files in os.walk(srcdir):
                    
            for filename in files:
                        src_file_path   
            = os.path.join(root, filename)
                        dest_file_path  
            = os.path.join(destdir, src_file_path[len(srcdir)+1:])
                        
                        cur_dest_dir
            = os.path.split(dest_file_path)[0]
                        
            if not os.path.exists(cur_dest_dir):
                            shutil.copytree(root, cur_dest_dir)
                            
            print('created dir:     %s'%cur_dest_dir)
                        
            elif not os.path.exists(dest_file_path) or not file_hash.compare_file(src_file_path, dest_file_path):
                            shutil.copyfile(src_file_path, dest_file_path)
                            
            print('created file:    %s'%dest_file_path)
                    




            posted on 2009-05-04 18:15 李現民 閱讀(726) 評論(0)  編輯 收藏 引用 所屬分類: minitools

            亚洲国产精品18久久久久久| 精品欧美一区二区三区久久久| 亚洲精品无码专区久久同性男| 伊人久久大香线蕉综合5g| 精品久久久一二三区| 99久久超碰中文字幕伊人| 99久久综合国产精品二区| 亚洲精品乱码久久久久久蜜桃| 久久人妻无码中文字幕| 久久夜色精品国产亚洲| 色综合久久中文字幕综合网| 久久A级毛片免费观看| 久久午夜无码鲁丝片午夜精品| 欧美一区二区三区久久综| 久久国产乱子伦精品免费午夜| 久久亚洲美女精品国产精品| 久久国产乱子伦精品免费午夜| 波多野结衣中文字幕久久| 一本大道久久东京热无码AV| 91精品国产综合久久香蕉 | 99精品国产免费久久久久久下载 | 久久人与动人物a级毛片| 99久久精品午夜一区二区| 超级碰碰碰碰97久久久久| 国产 亚洲 欧美 另类 久久| 久久久久久无码Av成人影院| 久久精品国产男包| 亚洲精品成人久久久| 亚洲欧美国产精品专区久久 | 老司机午夜网站国内精品久久久久久久久 | 久久精品国产亚洲AV久| 日韩美女18网站久久精品| 久久99精品久久久久久噜噜| 久久美女人爽女人爽| 国产韩国精品一区二区三区久久| 亚洲av日韩精品久久久久久a | 国产综合久久久久| 成人免费网站久久久| 99久久婷婷免费国产综合精品| 久久久久亚洲av无码专区喷水| 中文无码久久精品|