Cách giải nén và tham gia các tệp xxx.zip, xxx.z01 và xxx.z02


23

Tôi có ba tệp 1.zip, 1.z01 1.z02. Tôi muốn trích xuất và nối chúng vào một tệp, bằng cách nhấp chuột phải vào 1.zip và chọn "Trích xuất tại đây". Nhưng sau đó có một lỗi:

7-Zip 9.04 beta Bản quyền (c) 1999-2009 Igor Pavlov 2009-05-30 p7zip Phiên bản 9.04 (locale = en_US.utf8, Utf16 = on, HugeFiles = on, 2 CPU)

Lỗi: /home/tim/Desktop/1.zip: Không thể mở tệp dưới dạng lưu trữ

Lỗi: 1

Tôi đã tự hỏi nó là vấn đề gì và làm thế nào tôi có thể giải quyết nó?

Cảm ơn và trân trọng!


THÊM: Việc sử dụng "giải nén -FF" của tôi có sai không? Có vẻ như không hoạt động:

$ unzip -FF 1.zip 
Archive:  1.zip
warning [1.zip]:  zipfile claims to be last disk of a multi-part archive;
  attempting to process anyway, assuming all parts have been concatenated
  together in order.  Expect "errors" and warnings...true multi-part support
  doesn't exist yet (coming soon).
file #1:  bad zipfile offset (local header sig):  0

Cảm ơn một lần nữa!

THÊM 2: Vẫn không đúng.

$ cat 1.z01 1.z02 1.zip > combined.zip && unzip -FF combined.zip
Archive:  combined.zip
warning [combined.zip]:  zipfile claims to be last disk of a multi-part archive;
  attempting to process anyway, assuming all parts have been concatenated
  together in order.  Expect "errors" and warnings...true multi-part support
  doesn't exist yet (coming soon).
warning [combined.zip]:  209829313 extra bytes at beginning or within zipfile
  (attempting to process anyway)
file #1:  bad zipfile offset (local header sig):  209829313
  (attempting to re-compensate)
 extracting: 1.wmv   bad CRC ee181eef  (should be f3c61875)

Nó tạo ra 1.wmv, chỉ có thể chơi tốt cho đến giữa chừng trong Gnome Mplayer.

THÊM 3: Tôi đang sử dụng sai 7z:

$ 7z e 1.z01

7-Zip 9.04 beta  Copyright (c) 1999-2009 Igor Pavlov  2009-05-30 p7zip Version 9.04 (locale=en_US.utf8,Utf16=on,HugeFiles=on,2 CPUs)

Processing archive: 1.z01

Error: Can not open file as archive

$ 7z e 1.zip

7-Zip 9.04 beta  Copyright (c) 1999-2009 Igor Pavlov  2009-05-30 p7zip Version 9.04 (locale=en_US.utf8,Utf16=on,HugeFiles=on,2 CPUs)

Processing archive: 1.zip

Error: Can not open file as archive

Câu trả lời:


11

Hôm nay tôi cũng gặp vấn đề tương tự với Mass Effect 3. Các lập trình viên thực phẩm ngu ngốc đã phá vỡ việc cài đặt Mass Effect 3 trong phiên bản xuất xứ mới trên windows và dĩ nhiên rượu vang của tôi cũng vậy (cài đặt bị treo 99%). Tôi phải cài đặt thủ công:

cp /mnt/cdrom1/Mass\ Effect\ 3.z01 ~/temp/Mass\ Effect\ 3.z01
cp /mnt/cdrom2/Mass\ Effect\ 3.zip ~/temp/Mass\ Effect\ 3.zip
zip -FF Mass\ Effect\ 3.zip --out Mass\ Effect\ 3.zip.fixed
mkdir Mass\ Effect\ 3
unzip -d Mass\ Effect\ 3/ Mass\ Effect\ 3.zip.fixed
du --total Mass\ Effect\ 3
>> 10466048 (~10.5 GB => success)

zip -FF nên được áp dụng cho phần cuối của kho lưu trữ, nó sẽ tự động kiểm tra tất cả các phần


28

Thử:

zip -FF 1.zip --out 1-full.zip
unzip -FF 1-full.zip

Tôi nghĩ rằng rất có thể một số dữ liệu được chia nhiều lần, do đó bạn cần -FFvẫn trong unzip. Một đơn -Fcũng có thể làm việc mặc dù.


Làm thế nào để làm điều này trên Windows?
Danijel

1
chúng ta có cần -FF cho giải nén không?
shabunc

4

Đặt tất cả các tệp zip của bạn trong cùng một thư mục: zip_file.z01, zip_file.z02, zip_file.z03, ..., zip_file.zip

Trong phiên bản Zip 3.0, các lệnh sau hoạt động với tôi:

$ zip -s- zip_file.zip -O zip_file_full.zip
$ unzip zip_file_full.zip

Như đã lưu ý trong các nhận xét, sử dụng một -dấu hiệu sau tùy chọn dòng lệnh -skết hợp tất cả các tệp zip lại với nhau và ghi nó thành một tệp zip duy nhất mà sau đó bạn có thể trích xuất bằng unziplệnh.


2
Điều này làm việc hoàn hảo. Có lẽ bạn nên thêm tham số "-s" đó để chia thành nhiều tệp, nhưng nếu kích thước được cung cấp là 0 hoặc âm (trong trường hợp của bạn, bạn cung cấp "-"), sau đó thay vì chia tách, hãy nối lại tất cả các tệp.
AwkMan

Cảm ơn rất nhiều @AwkMan :) Xong!
kmario23

3

Tôi cũng đã có một số vấn đề. người đàn ông giải nén nói như sau:

Ngoài ra, zip 3.0 trở lên có thể kết hợp lưu trữ nhiều phần (tách) vào kho lưu trữ một tệp kết hợp bằng cách sử dụng `` zip -s- inarchive -O outarchive ''.

Điều này (zip -s- vmdkdisk -O kết hợp) dường như hoạt động với tôi ... (kết hợp vmdkdisk.z01 và vmdkdisk.zip vào một tệp kết hợp.zip)


2

Theo cách đọc man zip, tài liệu lưu trữ " Split .zip " có thể được kết hợp lại và giải nén bằng cách sử dụng unzip -FF.


Cảm ơn! Nhưng có vẻ như không hoạt động. Xem cập nhật của tôi cho bài viết của tôi. Cảm ơn!
Tim

cat 1.z01 1.z02 1.zip > combined.zip && unzip -FF combined.zip?
sladen

Cảm ơn! Bây giờ nó tạo ra 1.wmv, nhưng có một số lỗi.
Tim

Việc chạy 7z(7-Zip) trên .z01tệp đầu tiên có hoạt động không?
sladen

Vẫn không có. "Lỗi: Không thể mở tệp dưới dạng lưu trữ". Xem cập nhật của tôi.
Tim

1

Giải pháp trên của kmario23 là chính xác Tôi thấy một số lỗi chính tả. Đây là một ví dụ khác.

    pramodimac:SDK pramod$ pwd
    /Users/pramod/Downloads/SDK
    pramodimac:SDK pramod$ ls -ltrh
    total 150104
    -rw-r--r--@ 1 pramod  staff   1.3M Jun  3 11:56 SDK.zip
    -rw-r--r--@ 1 pramod  staff    18M Jun  3 11:58 SDK.z03
    -rw-r--r--@ 1 pramod  staff    18M Jun  3 11:58 SDK.z04
    -rw-r--r--@ 1 pramod  staff    18M Jun  3 11:58 SDK.z01
    -rw-r--r--@ 1 pramod  staff    18M Jun  3 11:58 SDK.z02
    pramodimac:SDK pramod$ zip -s 0 SDK.zip --out single.zip
    pramodimac:SDK pramod$ ls -ltrh
    total 300208
    -rw-r--r--@ 1 pramod  staff   1.3M Jun  3 11:56 SDK.zip
    -rw-r--r--@ 1 pramod  staff    18M Jun  3 11:58 SDK.z03
    -rw-r--r--@ 1 pramod  staff    18M Jun  3 11:58 SDK.z04
    -rw-r--r--@ 1 pramod  staff    18M Jun  3 11:58 SDK.z01
    -rw-r--r--@ 1 pramod  staff    18M Jun  3 11:58 SDK.z02
    -rw-r--r--  1 pramod  staff    73M Jun  6 22:26 single.zip
    pramodimac:SDK pramod$ unzip single.zip

1
Bạn có thể chỉnh sửa câu trả lời của anh ấy ...
wittich

0

Chuyển đến thư mục lưu trữ, thông qua thiết bị đầu cuối.

Nếu chúng ở trên máy tính để bàn, lệnh là:

cd ~/Desktop

~là tên thư mục nhà của bạn. Tạo lưu trữ đầy đủ, bằng cách sử dụng lệnh này:

zip -F (name of last part of archive, which will end with .zip, not .z0X) --out (desired output name of compiled archive, if has spaces put " marks around the name).zip

Lưu trữ đầy đủ bây giờ được tạo ra.
Giải nén toàn bộ kho lưu trữ, bằng cách sử dụng lệnh này:

unzip (full archive name, with " marks around it if has spaces).zip -d (destination folder directory, see first step)


0

Hãy nhớ rằng nếu các tệp theo dõi của bạn (01, 02, v.v.) được tạo bởi Windows (Z01, Z02, v.v.) thì linux của bạn sẽ không tìm thấy chúng. Bạn cần đổi tên các tệp thành z01, z02 ..

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.