• <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>

            清風(fēng)竹林

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

            目錄文件比較工具 python

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

            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 李現(xiàn)民 閱讀(722) 評(píng)論(0)  編輯 收藏 引用 所屬分類: minitools

            久久精品国产亚洲av瑜伽| 伊人久久亚洲综合影院| 狠狠色丁香久久综合婷婷| 精品久久无码中文字幕| 国产精品美女久久久久AV福利| 久久婷婷色综合一区二区| 亚洲中文久久精品无码ww16| 精品久久久久久中文字幕| 欧美激情精品久久久久久久| 亚洲女久久久噜噜噜熟女| 久久se精品一区精品二区国产| 久久免费看黄a级毛片| 99精品伊人久久久大香线蕉| 久久精品人妻中文系列| 国产精品久久久天天影视香蕉| 国产美女亚洲精品久久久综合| 亚洲一本综合久久| 无码人妻久久一区二区三区 | 久久国产精品一区| 亚洲精品国精品久久99热一| 久久不见久久见免费影院www日本| 色欲综合久久躁天天躁蜜桃| 久久精品国产亚洲一区二区三区| 国产一区二区三区久久| 久久久久亚洲av无码专区喷水| 日产久久强奸免费的看| 中文字幕亚洲综合久久| 91久久精品视频| 国产一区二区精品久久凹凸| 久久精品国产精品国产精品污| 久久亚洲中文字幕精品有坂深雪| 综合久久精品色| 久久久久se色偷偷亚洲精品av| 久久久久亚洲国产| 亚洲日韩欧美一区久久久久我| 久久精品二区| 老男人久久青草av高清| 精品国产乱码久久久久久人妻 | 久久综合久久自在自线精品自| 亚洲国产精品无码久久久秋霞2 | 无码人妻少妇久久中文字幕蜜桃|