首页 > 解决方案 > python shutil.make_archive - 没有嵌套目录结构的压缩

问题描述

我搜索并找到了一些不同的答案,阅读了文档(这不是最有帮助的),并使用我的代码进行了切换,但似乎仍然找不到我正在寻找的答案。

我想将我的 download_dir 中的所有内容(仅叶子文件)归档到 zip|tar 中,但我尝试的每个解决方案还包括的父树tmp/stuff/downloads- 是否可以这样做shutil.make_archive?还是我必须用 zipfile/tarfile 自己动手?

def download_file(file_name):
   # download to /tmp/stuff/downloads/file_name

download_file('file1.txt')
download_file('hello.md')

shutil.make_archive(root_dir='/tmp/stuff/downloads', 
                    base_dir='/tmp/stuff/downloads', 
                    base_name='my_file', format='zip')

# I want `my_file.zip` to only contain file1.txt and hello.md, no nested directories

标签: pythonshutil

解决方案


推荐阅读