python tarfile在创建tarball时忽略目录结构
我的目录结构如下:python tarfile在创建tarball时忽略目录结构,python,Python,我的目录结构如下: D:\testfolder\folder_to_tar: |---folder1 |--- file1.txt |---folder2 |--- file2.txt |---file3.txt 我想在同一目录级别使用Python创建一个tarball。然而,我注意到,在tarball中,pyt
D:\testfolder\folder_to_tar:
|---folder1
|--- file1.txt
|---folder2
|--- file2.txt
|---file3.txt
我想在同一目录级别使用Python创建一个tarball。然而,我注意到,在tarball中,python也包括父目录,即我的示例中的testfolder
Expected Output :
D:\testfolder:
|---folder_to_tar.tar
|---folder_to_tar
|--folder1
.....
Actual Output :
D:\testfolder:
|---folder_to_tar.tar
|---testfolder
|---folder_to_tar
|--folder1
.....
代码:
import tarfile
tarname = "D:\\testfolder\\folder_to_tar"
tarfile1 = "D:\\testfolder\\folder_to_tar.tar"
tarout = tarfile.open(tarfile1,mode="w")
try:
tarout.add(tarname,arcname=tarname)
finally:
tarout.close()
有人能帮我实现吗。你试过在
tarname
的末尾添加\
吗?你试过在tarname
的末尾添加\
吗?试着替换tarout。添加行为:
tarout.add(tarname,arcname=os.path.basename(tarname))
注意:您还需要
导入操作系统尝试将tarout.add行替换为:
tarout.add(tarname,arcname=os.path.basename(tarname))
注意:您还需要导入操作系统
,这不会有多大区别。这不会有多大区别。