2014-09-22 3 views
1

Как преобразовать tar-файл в zip с помощью stdout/stdin?конвертировать tar в zip с stdout/stdin

- @ принимает список файлов из stdin, tar -t обеспечивает это, но фактически не извлекает файлы. Использование -xv предоставляет мне список файлов и извлекает их на диск, но я стараюсь не касаться диска.

tar -xf somefile.tar -O | zip somefile.zip - 

я могу сделать это временно запись файлов на диск, но я пытаюсь избежать этого - я хотел бы использовать только трубу.

ответ

0

В принципе, я не знаю, что «стандартная» утилита выполняет преобразование «на лету».

Но аналогичный вопрос обсуждался через here с использованием python libs, который имеет простую структуру, возможно, вы можете адаптировать сценарий к вашим требованиям.

0

Я никогда не слышал об инструменте, который выполняет прямое преобразование. В качестве обходного пути, если ваши файлы не очень велики, вы можете извлечь архив tar в каталог tmpfs -mounted (или аналогичный), то есть файловую систему, которая полностью находится в памяти и не работает с диском. Он должен быть намного быстрее, чем извлечение в папку диска.

Смежные вопросы