我想把一个文件夹打包成一个文件,我不需要压缩。我尝试过的所有选择都是缓慢的。
我试过:
zipfile库ZIP_STORED (无压缩)import zipfile
output_filename="folder.zip"
source_dir = "folder"
with zipfile.ZipFile(output_filename, 'w', zipfile.ZIP_STORED) as zipf:
zipdir(source_dir, zipf)tarfile库还使用w打开文件,无需压缩就可以写入
import tarfile
import os
output_filename="folder.tar"
source_dir = "folder"
with tarfile.open(output_filename, "w") as tar:
tar.add(source_dir, arcname=os.path.basename(source_dir)) 但是,两种方法都要花费3-5分钟来打包一个文件夹,这个文件夹是~5GB,里面有<10个文件。
我使用的是Linux机器。
有更快的路吗?
发布于 2022-11-25 10:41:52
我不太确定它是否更快,但是如果您正在运行linux,您可以尝试tar命令:
import time
import os
start = time.time()
os.system("tar -cvf name.tar /path/to/directory")
end = time.time()
print("Elapsed time: %s"%(end - start,))如果还需要文件压缩,则需要在第一个命令之后添加gzip:
os.system("gzip name.tar")https://stackoverflow.com/questions/74571456
复制相似问题