Современный WinZIP и Linux

()

Архиватор WinZIP уже много лет пользуется популярностью среди Windows-пользователей. Изначально WinZIP начинался как графический интерфейс для управления утилитами PKZIP и со временем стал самостоятельным продуктом. В последних версиях появилась поддержка многотомных ZIP-архивов, а так же добавлен новый, "улучшенный", формат - ZIPX.

Интересно посмотреть как обстоят дела с поддержкой в Linux архивов, созданных в современных версиях WinZIP. Рассмотрим четыре варианта: обычный ZIP-архив, ZIP-архив с разбивкой на тома, ZIPX-архив и ZIPX-архив с разбивкой на тома. Распаковывать будем на машине под управлением Ubuntu 18.04.

Для начала на машине под управлением Windows 10 были созданы тестовые архивы в демо версии WinZIP и перемещены на машину под управлением Ubuntu 18.04. В качестве тестового набора данных использована сборка одного из браузеров на основе Chromium.

ZIPX-архив, открытый в приложении Ark из состава KDE5

Обычный ZIP-архив

С обычными ZIP-архивами проблем в Linux нет. Благодаря труду ребят из группы Info-ZIP во всех современных дистрибутивах есть утилита "unzip", позволяющая быстро и без проблем распаковать ZIP-архив. Пример использования:

unzip archive.zip

В качестве альтернативы можно воспользоваться утилитой "7z" из пакета "p7zip-full". Она так же хорошо справляется с ZIP-архивами. Распаковать с её помощью ZIP-архив можно командой вида:

7z x archive.zip

Кроме того большинство графических оболочек для работы с архивами используют unzip и/или 7z и потому можно распаковать такие архивы даже без обращения к терминалу, используя KDE Ark, File-Roller, XArchiver и другие подобные приложения.

Многотомный ZIP-архив

С многотомными ZIP-архивами дела обстоят несколько сложнее. Распаковать их можно, но требуется некоторое "шаманство" в терминале. Сначала нужно сложить все части архива в одну директорию, а потом собрать из них новый архив командой:

zip -F src.zip --out rebuilded.zip

Если что-то пошло не так (например один из томов отсутствует или повреждён) то пересобрать архив нужно командой:

zip -FF src.zip --out rebuilded.zip

В обоих случая здесь "src.zip" это исходный архив, а "rebuilded.zip" - новый архив, который уже является простым ZIP-архивом, а не многотомным и его уже можно распаковать любым удобным способом.

Обычный ZIPX-архив

ZIPX-файлы проектом Info-ZIP к сожалению не поддерживаются, однако разработчики 7-zip добавили поддержку в свой архиватор, откуда она перекочевала в проект p7zip и стала доступна в Linux через упомянутую выше утилиту "7z" из пакета "p7zip-full".

Большинство графических оболочек для работы с архивами так же добавили поддержку ZIPX через 7z и теперь совсем не обязательно использовать терминал для распаковки. Однако в случае необходимости можно использовать команду:

7z x archive.zipx

Многотомный ZIPX-архив

Несмотря на то что 7z хорошо работает с одиночными ZIPX-файлами, оказалось что он практически бесполезен при работе с многотомными ZIPX-архивами.

Есть возможность просмотреть оглавление каждого тома и даже можно извлекать отдельные файлы, при условии что они находятся полностью внутри одного тома, однако если файл находится одновременно в нескольких томах (а специфика формата ZIPX такова что большая часть файлов в многотомном архиве "размазана" по нескольким томам) то попытка распаковки заканчивается ошибкой.

Учитывая что каких-либо других инструментов с поддержкой ZIPX для Linux нет, можно говорить о том что поддержка многотомных ZIPX-архивов в Linux отсутствует как класс.

Сводная таблица

Основными инструментами для работы с ZIP-архивами в Linux вот уже много лет остаются утилиты unzip и 7z. Попробуем собрать их возможности в табличку:

unzip 7z
Одиночный ZIP-архив Да Да
Многотомный ZIP-архив Нет (Да. После пересборки архива) Нет (Да. После пересборки архива)
Одиночный ZIPX-архив Нет Да
Многотомный ZIPX-архив Нет Нет

Как видим полноценной поддержки современных форматов WinZIP в Linux нет, однако стоит отметить что "в быту" многотомные архивы встречаются достаточно редко, а обычные архивы поддерживаются в полной мере.

На этом всё. Приятной работы!

Ключевые слова: winzip, zip, zipx, 7z, unzip.

Подписаться на обновления: RSS-лента Канал в TamTam Telegram канал Канал в ICQ

Комментарии:

Anonymous 2019-04-03 21:54:27 (#)

Многотомные архивы давно уже не актуальны, время дискет прошло.

MooSE 2019-04-05 15:39:20 (#)

Многотомные архивы давно уже не актуальны, время дискет прошло.
Оказалось что актуальны. Тему я изучать начал после того как ко мне обратился товарищ с соответствующим вопросом. Сценариев на самом деле достаточно до сих пор.
Новый комментарий

Жирный текстКурсивный текстПодчёркнутый текстЗачёркнутый текстПрограммный кодСсылкаИзображение




© 2006-2019 Вадим Калинников aka MooSE