解压多个与连接/追加文件相同的tar文件

问题描述 投票:0回答:2

我的情况如下:有几个名为tar1.tar.gzip,tar2.tar.gzip等的tar文件,每个文件包含一个不同的文件,但名称相同 - fn.csv。

如果我一个接一个地向同一个目录解开,我得到最后一个,有没有办法让tar附加内容而不是踩到它?

到目前为止,我已经在每个untar之后添加了复制到唯一文件名,然后连接所有文件,是否有更直接的方式(python或bash)?

python bash unix gzip tar
2个回答
1
投票

使用GNU tar:

fileno="42"
tar -xvzf "tar${fileno}.tar.gzip" --transform 's/.*/file'"${fileno}"'.csv/' --show-transformed-names

这会将tar42.tar.gzip提取到当前目录,并将其文件命名为file42.csv。我假设存档只包含一个文件。


2
投票

tar没有选择这样做。要做得比当前的解决方案更好,您需要编写自己的untar,追加到当前文件。

© www.soinside.com 2019 - 2024. All rights reserved.