问题标签 [tarfile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1285 浏览

python - Python:解压 tar 文件列表

我想从多个 tar 存档中提取所有文件,但无论我做什么,它都行不通。可以说,我在 C:\Temp 中有两个 tar 文件。所以我想,我所要做的就是在 C:\temp 中获取 *.tar 文件的列表,然后用循环提取它:

问题是什么?即使经过数小时的搜索,我也找不到有用的示例...

谢谢!

0 投票
3 回答
3069 浏览

python - 如何用 Python 解压 7-Zip.gz (.gz)?

我有一个要解压缩的 .tar.gz 文件(当我使用 7-Zip 手动解压缩时,我在其中得到一个 .tar 文件)。tarfile然后我可以使用 Python模块轻松解压这个 .tar 文件。

当我在 Windows 资源管理器中右键单击 .tar.gz 文件时,我可以在文件类型下看到:7-Zip.gz (.gz)。我曾尝试使用 gzip 模块 ( gzip.open),但出现异常'Not a gzipped file'。所以应该有别的办法。

我在互联网上搜索过,看到人们手动使用 7-Zip 或一些批处理命令,但是我找不到在 Python 中执行此操作的方法。我在 Python 2.7 上。

0 投票
1 回答
606 浏览

python - maven-assembly-plugin 生成与 python 的 tarfile 不兼容的 tar(与 bsdtar 一起使用)

作为自动化部署管道的一部分,我正在创建一个tar.gz文件,maven-assembly-plugin然后使用 pythontarfile模块将其解包。

提取失败,但有以下异常:

Traceback (most recent call last): File "tarfile-assembly-testcase/extract_tar.py", line 20, in <module> tarfile.open(fileobj=f, mode='r:gz') File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tarfile.py", line 1676, in open return func(name, filemode, fileobj, **kwargs) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tarfile.py", line 1725, in gzopen **kwargs) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tarfile.py", line 1703, in taropen return cls(name, mode, fileobj, **kwargs) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tarfile.py", line 1572, in __init__ self.firstmember = self.next() File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tarfile.py", line 2335, in next raise ReadError(str(e)) ReadError: invalid header

压缩和未压缩的 tar 文件都会发生这种情况。可以从命令行解压缩相同的文件。我已经用bsdtar 2.8.3and对其进行了测试tar (GNU tar) 1.26。我正在使用python 2.7.

请尝试我在 github 上发布的演示。这是一个 maven 项目,运行 mvn package 它将创建一个包含项目源的 tar.gz(仅 pom.xml)。包含的 python 脚本尝试使用tarfile.

有什么想法可以maven-assembly-plugin和 pythontarfile一起玩吗?

0 投票
1 回答
976 浏览

python - Python:从 FTP 获取 TAR 中的单个文件

我有一个包含我所有 tar 文件的 ftp 服务器,这些 tar 文件有 500MB+ 大,而且它们太多了,我需要做的就是从包含多个文件的 TAR 中获取一个文件,这些文件变成 500MB+。

我最初的想法是下载每个 tar 文件并获取我需要的单个文件,但这似乎效率低下。

我使用 Python 作为编程语言。

0 投票
2 回答
3350 浏览

python - 使用 Python 的 tarfile 创建 tarball 时保留文件权限

你好stackoverflowers,

我想在使用 Python 的 tarfile 模块时保留原始文件权限。解压缩 tarball 后,我有很多可执行文件会失去权限。

我正在做这样的事情:

然后我使用shutil将它从windows复制到linux机器(用samba映射):

然后,要在 linux 中提取 tarball,我会这样做

解压缩 tarball 后,我失去了对文件的所有“x”权限

任何线索如何解决这个问题?

问候

0 投票
1 回答
1049 浏览

python - Python:如何通过排除第 3 个目录来使用 tarfile 模块获取 tar

我有这样的目录结构

我需要通过排除 所有dir1、dir2、dir3和更多目录下的“build_dir”来使用 tarfile 模块获取 tar。我可以在子进程中使用一个非常简单的 tar 语句来实现这一点

但是我正在寻找一种pythonic方法来实现这一点,到目前为止我所做的并不排除“build_dir”目录。

如果有人找到答案,那将非常有帮助。

0 投票
1 回答
3307 浏览

python - 将 tempfile 和 tarfile 与 python 结合起来?

假设我们有一个临时文件,我们可以向其中写入一些输出。但出于某种奇怪的原因,我们希望它被一些归档技术压缩,例如 tar,

临时文件是指 tempfile.TemporaryFile() 创建的名称不可见的文件。有任何想法吗?我的第一印象包括一些 tweeking 和类继承.. 有没有更简单的方法?

0 投票
1 回答
500 浏览

python - 如何避免文件被覆盖

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

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

0 投票
2 回答
4351 浏览

python - Python 的 tarfile.open 需要 close() 吗?

tarfile的官方 python 文档中,我没有看到使用创建的 tarfile

一旦你不再需要它就应该关闭它。
在其他一些示例中(例如此处),您经常会看到未关闭的 tar 文件。

如果我在某些函数中更频繁地打开同一个 tar 文件而不总是关闭它,我会遇到问题吗?

在 'r' 而不是 'w' 模式下打开 tarfile 是否有区别(明显的读/写除外)?
因为在示例中,如果使用写入模式“w”打开 tar 文件,他们总是关闭它?

0 投票
1 回答
113 浏览

python - Python tarfile 失败

我正在尝试编写一个脚本,将目录和 scp's tar 到具有大量 tar 文件的服务器。我在创建目录的 tar 时遇到问题,这是完整的脚本。为什么会这样?

代码:

附加运行: