1

Я получил несколько архивов, и все они имеют расширения .z01 .z02 .z03 и т.д.

Нет файла .zip и файла .z00.

Если я перенесу эти файлы на свой Mac и запустлю их через un-stuffit, он распакуется нормально.
Но я не могу понять, кто делать это на моем NAS (Linux) через окно терминала (я на самом деле хочу автоматизировать процесс, поэтому это должно происходить на Linux-коробке)

Я пробовал zip -FF file.z01 --out newfile.zip, а затем разархивировать newel.zip, но это не удается.
Я попытался 7z и все другие предложенные варианты (которые относятся к наличию .zip файла) не удаются.

Может кто-нибудь направить меня в правильном направлении. Нужна ли конкретная версия zip или 7z ??

2 ответа2

2

Вы уверены, что это все архивные файлы? Возможно, вам не хватает файла .zip или .z00 . Или попробуйте запустить file с файлами (используя file * в их каталоге), они могут вообще не быть zip-файлами.

Можно также попробовать использовать cat чтобы "вставить" все файлы в правильном порядке и записать в файл (если он маленький) или передать это прямо в zip/unzip:

cat .z01 .z02 .z03 ... | unzip

Должен быть в состоянии использовать подстановочные знаки и для имен файлов, таких как cat name.z* , и тестирование списка / порядка с помощью echo name.z* тоже может помочь / сначала.

Но man unzip говорит, что он должен быть в состоянии обрабатывать символы подстановки сам, так что это тоже может сработать:

unzip name.z*

Возможно, требуется экранирование (name.z\*) или цитирование звездочки. unzip "name.z*" Смотрите man unzip .

Если вышеперечисленное не работает, то из ошибки man unzip (перечисленной ниже) вам, возможно, придется cat все файлы в один файл, а затем запустить zip -F или zip -FF , как показано в:

zip -F foo --out foofix или zip -FF foo --out foofixfix

А затем разархивировать foofix или foofixfix


Информация от man unzip:

ОШИБКИ
Многокомпонентные архивы пока не поддерживаются, кроме как в сочетании с zip. (Все части должны быть соединены вместе по порядку, а затем `` zip -F '' (для zip 2.x) или '' zip -FF '' (для zip 3.x) должны быть выполнены в объединенном архиве по порядку починить это. Кроме того, zip 3.0 и более поздние версии могут объединять многокомпонентные (разделенные) архивы в объединенный однофайловый архив с помощью '' zip -s-inarchive -O outarchive ''. См. Страницу руководства zip 3 для получения дополнительной информации.) Это обязательно будет исправлено в следующем основном выпуске.

И эта информация от man zip может быть полезна:

Сплит архивы. zip-версия 3.0 и более поздние могут создавать разделенные архивы. Разделенный архив - это стандартный zip-архив, разбитый на несколько файлов. (Обратите внимание, что разделенные архивы - это не просто архивы, разбитые на части, поскольку смещения записей теперь основаны на начале каждого разделения. Объединение частей вместе сделает недействительными эти смещения, но распаковка обычно справляется с этим. zip обычно отказывается обрабатывать такой объединенный архив, если только опция -FF fix не используется для исправления смещений.)

...

Кроме того, потоковые архивы, записи, зашифрованные с использованием стандартного шифрования, или разделенные архивы, созданные с помощью параметра паузы, могут быть несовместимы с PKZIP, так как используются дескрипторы данных, а PKZIP на момент написания этой статьи не поддерживает дескрипторы данных (но последние изменения в Опубликованный стандарт PKWare zip теперь включает некоторую поддержку формата дескриптора данных, используемого zip).

1

Решил это. Глупый файл - это архив RAR. unrar e filename.z01 сработал. Задача решена

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .