如何避免覆盖文件

时间:2014-07-29 17:14:26

标签: python tarfile

我们使用python的tarFile库来解压缩到目标目录的给定文件集。

tarGzipFile = tarfile.open(fileName)
tarGzipFile.extractall(targetDir + '/')

如果同一个文件存在于多个tar.gz文件中,那么该文件将在目标目录中重写。如何更改我的代码以避免覆盖?并且还寻找类似于tar的选项--backup none或编号...这样如果文件存在,那么它前缀为〜或者在末尾添加数字。

1 个答案:

答案 0 :(得分:0)

您可以使用tarGzipFile.getmembers()列出存档中的文件,并将members =传递给仅包含您要提取的文件的提取(即,排除已存在的文件)。 os.path.exists()可用于检查文件是否存在。