python给缓存盘备份

import os
import zipfile

def zip_directory(folder_path, zip_path, exclude_files):
    with zipfile.ZipFile(zip_path, 'w', zipfile.ZIP_DEFLATED) as zipf:
        for root, dirs, files in os.walk(folder_path):
            for file in files:
                if file in exclude_files:
                    continue  # 跳过虚拟内存文件

                file_path = os.path.join(root, file)
                arcname = os.path.relpath(file_path, folder_path)
                
                try:
                    zipf.write(file_path, arcname)
                except PermissionError:
                    print(f"Permission denied: {file_path}, skipping.")
                except Exception as e:
                    print(f"Error compressing {file_path}: {e}, skipping.")

def main():
    # 需要压缩的盘符路径
    drive_to_backup = "G:\\"
    
    # 固定ZIP文件的路径和名称
    backup_dir = "H:\\Documents\\cache_backup\\"  # 使用原始字符串
    if not os.path.exists(backup_dir):
        os.makedirs(backup_dir)
    
    zip_filename = "weekly_backup.zip"  # 固定文件名
    zip_path = os.path.join(backup_dir, zip_filename)

    # 要排除的文件列表
    exclude_files = ["pagefile.sys", "swapfile.sys", "hiberfil.sys", "DumpStack.log.tmp", "TEMP_ZJG"]

    # 开始压缩
    zip_directory(drive_to_backup, zip_path, exclude_files)

if __name__ == "__main__":
    main()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今日体验:正确的认知价值观,眼光要看的长远,不要局限在当下的某一件事情上,懂得控制自己,这知道自己当下应该改进的地方!
    谢波1阅读 95评论 0 0
  • 2024.8.30周五 今天很忙碌,上午要去学校集体备课,下午要去另一个校区开会,然后宝宝分班我们全程在线直播,我...
    偏偏喜欢你sky阅读 42评论 0 1
  • 1.张昌随即江夏作为自己的根据地,他派人散布流言说:“现在是圣人出现领导民众的时候到了。”张昌手下捉到山都县吏丘沈...
    荒原苍狼阅读 62评论 0 1
  • 出去玩一次我能更一百篇文章也说不定,说明日常真的太无聊了🥱。 那天从高原逃亡的路上,其实景色巨美,时间是凌晨五六点...
    下雨了于是小龙撑起了伞阅读 782评论 13 47
  • 今天和父母商议下周到贵阳龙洞堡机场迎接光荣退伍的弟弟,一开始他们是不愿意来的,原因是我现在收入不高,他们心疼我赚钱...
    e884136b17c4阅读 48评论 0 0