代码之家  ›  专栏  ›  技术社区  ›  Ezer K

将多个tar文件与连接/附加文件完全相同

  •  0
  • Ezer K  · 技术社区  · 8 年前

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

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

    到目前为止,我已经在每个untar后面添加了copy到惟一的文件名,然后将所有文件连接起来,有没有更直接的方法(python或bash)?

    2 回复  |  直到 8 年前
        1
  •  1
  •   Cyrus    8 年前

    用GNU TAR:

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

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

        2
  •  2
  •   Mark Adler    8 年前

    焦油是没有选择的。要比当前的解决方案做得更好,您需要编写自己的UNTAR,该UNTAR附加到当前文件中。