[英]Moving multiple files from a single folder to multiple folders according to their name
[英]Adding multiple folders from different path to a single zip folder
我在不同的路径中有两个文件夹,可以说 path1/file1 和 path2/file2。 我想将这两个文件压缩到一个 zip 文件夹中。 有什么办法可以做到这一点。
请使用如下命令
"zip -r total.zip pathoffolder1 pathoffolder2"
这是微不足道的。 例如
import zipfile
with zipfile.ZipFile("Your_zip_file_path.zip", "w") as myzip:
myzip.write("path1")
myzip.write("path2")
在写入Zipfile
以在 zip 中创建新目录时,您需要设置arcname="..."
:
from pathlib import Path
import zipfile
def zipFlat(files, zipFolder, outFile):
zipFolder = Path(zipFolder)
zipf = zipfile.ZipFile(outFile, 'w')
for file in files:
filename = Path(file).name
arcPath = zipFolder / Path(filename)
zipf.write(file, arcname=str(arcPath))
filesToZip = ['/tmp/foo/bar/R.txt', '/tmp/foo/baz/Z.txt']
zipFlat(filesToZip, 'myArchiveDir', '/tmp/archive.zip')
生成的 zip 文件保存在“myArchiveDir”中:
# unzip -l archive.zip
Archive: archive.zip
Length Date Time Name
--------- ---------- ----- ----
0 01-15-2019 16:18 myArchiveDir/R.txt
0 01-15-2019 16:18 myArchiveDir/Z.txt
--------- -------
0 2 files
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.