распаковать несколько tar-файлов с одинаковыми именами в объединенный / добавленный файл - PullRequest
0 голосов
/ 03 сентября 2018

Моя ситуация выглядит следующим образом: иметь пару файлов tar с именами tar1.tar.gzip, tar2.tar.gzip и т. д. каждый из них содержит свой файл, но с тем же именем - fn.csv.

если я распаковываю один за другим один и тот же каталог, я получаю последний, Есть ли способ заставить tar добавлять содержимое, а не переступать через него?

До сих пор я добавлял копию в уникальное имя файла после каждого разархивированного файла, а затем объединял все файлы, есть ли более прямой путь (python или bash)?

Ответы [ 2 ]

0 голосов
/ 03 сентября 2018

С GNU tar:

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

Извлекает tar42.tar.gzip в текущий каталог и присваивает файлу имя file42.csv. Я предполагаю, что архив содержит только один файл.

0 голосов
/ 03 сентября 2018

У tar нет возможности сделать это. Чтобы сделать лучше, чем ваше текущее решение, вам нужно написать свой собственный unntar, который добавляется к текущим файлам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...