Câu hỏi Làm thế nào để giải nén một tập tin zip từ Terminal?


Chỉ cần tải xuống tệp .zip từ internet. Tôi muốn sử dụng thiết bị đầu cuối để giải nén tệp. cách chính xác để làm điều này là gì?


1146
2017-12-11 04:37


gốc


Trích xuất tất cả các tệp từ thư mục hiện tại, bạn có thể sử dụng: giải nén \ *. Zip - burtsevyg
@ burtsevyg dấu gạch chéo ngược là không cần thiết ở đó. Nó sẽ làm cho điều trị vỏ \* như là biểu tượng ngôi sao theo nghĩa đen. Chỉ dùng unzip *.zipđể mở rộng vỏ * cho tất cả các tệp kết thúc bằng .zip - Sergiy Kolodyazhnyy


Các câu trả lời:


Nếu unzip lệnh chưa được cài đặt trên hệ thống của bạn, sau đó chạy:

sudo apt-get install unzip

Sau khi cài đặt tiện ích giải nén, nếu bạn muốn giải nén vào một thư mục đích cụ thể, bạn có thể sử dụng:

unzip file.zip -d destination_folder

1577
2017-12-11 04:44



Nếu bạn đã có trong thư mục bạn muốn tệp giải nén, hãy bỏ qua các đối số thứ 2 và thứ 3, tức là unzip /path/to/file.zip - Severo Raz
Tôi vừa mới sử dụng lệnh này. Đây là một ví dụ. Bước 1 (Tôi đã đổi thành thư mục chứa tệp zip): cd /home/paf/Copy/Programming/Javascript/Json    Bước 2 (Tôi giải nén tệp zip trong thư mục mà tôi vừa đề cập): unzip file.zip -d /home/paf/Copy/Programming/Javascript/Json - pablofiumara
unzip có thể là một chương trình mặc định. Nói cách khác, bạn có thể không cần phải cài đặt nó. - noobninja
@Aevi Kiểm tra trang người đàn ông [-d exdir] An optional directory to which to extract files. - Zety
Hãy chắc chắn rằng bạn trích xuất vào một thư mục, không giống như kho lưu trữ tar, bạn có thể tìm thấy nhiều người bao gồm hàng tá tệp trong thư mục gốc của tệp zip của họ, điều này có thể làm cho một mess thực sự !!! - Steve


Bạn chỉ có thể sử dụng unzip.

Cài đặt nó: apt-get install unzip

Và sử dụng nó: unzip file.zip


192
2017-12-11 04:41





Một công cụ hữu ích hơn là 7z, giúp nén và giải nén một loạt các định dạng nén, đáng chú ý lzma, thường là giao thức cung cấp tỷ lệ nén cao nhất.

Lệnh này cài đặt 7z:

sudo apt-get install p7zip-full

Lệnh này liệt kê nội dung của mã zip:

7z l zipfile.zip

Lệnh này trích xuất nội dung của mã zip:

7z x zipfile.zip

96
2017-09-14 08:01



7z e không giữ cấu trúc thư mục - 7z x làm... - assylias
13.10 nói 7z không tồn tại. Tôi nghĩ rằng nó phải sudo apt-get cài đặt 7zip - nitishch
Tôi nghĩ rằng lệnh cài đặt sẽ là sudo apt-get install p7zip hoặc là sudo apt-get install p7zip-full Bạn cần phiên bản đầy đủ để có được 7z chỉ huy. Toàn bộ cũng là người duy nhất xử lý zip và các loại định dạng khác trong số hai định dạng này. - Automatico
bạn có thể làm rõ "Một công cụ hữu ích hơn" không? Bạn đang so sánh để giải nén? Bạn có thể cung cấp bất kỳ ví dụ về các tính năng làm cho 7z hữu ích hơn và có lẽ trong đó ngữ cảnh 7z được ưu tiên hơn? - David LeBauer
Đối với một số giải nén là hữu ích hơn: dễ sử dụng và tên của nó để nhớ. - Shy Robbiani


Bạn có thể dùng:

unzip file.zip -d somedir

để trích xuất yourpath/somedir

Nếu bạn muốn trích xuất một đường dẫn tuyệt đối, hãy sử dụng

sudo unzip file.zip -d /somedir

38
2018-05-28 16:45





Sử dụng các công cụ tạo kịch bản lệnh: Perl và Python

Nhiều câu trả lời ở đây đề cập đến các công cụ yêu cầu cài đặt, nhưng không ai đề cập rằng hai ngôn ngữ kịch bản của Ubuntu, Perl và Python, đã đi kèm với tất cả các mô-đun cần thiết cho phép bạn giải nén một kho lưu trữ zip, có nghĩa là bạn không cần phải cài đặt bất cứ thứ gì khác. Chỉ cần sử dụng một trong hai kịch bản được trình bày bên dưới để thực hiện công việc. Chúng khá ngắn và thậm chí có thể được cô đặc thành lệnh một lớp nếu chúng ta muốn.

Python

#!/usr/bin/env python3
import sys
from zipfile import PyZipFile
for zip_file in sys.argv[1:]:
    pzf = PyZipFile(zip_file)
    pzf.extractall()

Sử dụng:

./pyunzip master.zip

Perl

#!/usr/bin/env perl
use Archive::Extract;
foreach my $filepath (@ARGV){
    my $archive = Archive::Extract->new( archive => $filepath );
    $archive->extract;
}

Sử dụng:

./perlunzip master.zip

24
2018-06-02 18:43





Trong trường hợp đích của bạn giống như tệp zip nguồn, bạn có thể chỉ cần thực hiện:

unzip filename.zip

20
2018-03-20 06:28



Trên Ubuntu 17.04, -d yêu cầu không rõ lý do. - 林果皞


tôi thích bsdtar đến unzip/zip. Để giải nén, chúng khá giống nhau:

bsdtar -x -f /one/two/three/four.zip -C /five
unzip /one/two/three/four.zip -d /five

Tuy nhiên để nén, bsdtar thắng. Giả sử bạn có đầu vào này:

/one/two/three/alfa/four.txt
/one/two/three/bravo/four.txt

và muốn điều này trong tệp zip:

alfa/four.txt
bravo/four.txt

Điều này rất dễ dàng với bsdtar:

bsdtar -a -c -f four.zip -C /one/two/three alfa bravo

zip không có -d tùy chọn như giải nén, vì vậy bạn không có cách nào để đạt được điều này trừ khi bạn cd Đầu tiên.


14
2017-12-02 01:50





Dưới đây là mô tả chi tiết về các tùy chọn mà tôi thấy hữu ích:

Command: unzip -[option] zip-path.  
               -l List archive files.  
               -t Test archive files with cyclic redundancy check.  
               -u update the existing files.  
               -z archive comment.  

14
2017-10-14 10:58





Đây là lệnh trong trường hợp bạn muốn trích xuất trong thư mục hiện tại

unzip <source_file_path>.zip 

nếu bạn muốn giải nén vào một thư mục đích cụ thể, bạn có thể sử dụng

unzip <sorce_file_path>.zip -d <destination_path>

nếu có mật khẩu bạn cũng có thể sử dụng -P

unzip -P <password> <sorce_file_path>.zip 

Nếu gói giải nén chưa được cài đặt trên hệ thống của bạn, hãy chạy:

sudo apt-get install unzip

2
2017-11-01 17:54



Điều này lặp lại những câu trả lời hiện có đã nói. - Sergiy Kolodyazhnyy


Trước hết bạn cần phải cài đặt unzip nếu nó chưa được cài đặt.

sudo apt-get install unzip

1 - Nếu tệp nằm trong cùng thư mục mà thiết bị đầu cuối đó và bạn muốn trích xuất nó trong cùng một vị trí.

sudo unzip file.zip

nếu tệp được bảo vệ bằng mật khẩu sử dụng:

sudo unzip -P file.zip

ans chắc chắn rằng nó -P không phải -p nó là lựa chọn khác

2 - Nếu tập tin không nằm trong cùng một thư mục và bạn muốn giải nén nó trong thư mục khác nhau thì đầu cuối là. sử dụng :

sudo unzip path/filename.zip -d anotherOrSamePath

nếu bạn không sử dụng -d các tập tin sẽ được trích xuất đến vị trí mà thiết bị đầu cuối trên.

Và nếu có mật khẩu bạn cũng có thể sử dụng -P .


0
2017-08-28 06:55



Vui lòng không đăng ảnh chụp màn hình của văn bản. Sao chép văn bản và áp dụng định dạng mã. - muru
lưu ý bạn không cần sử dụng sudo sử dụng nó chỉ khi cần thiết tôi sử dụng nó bởi vì các tập tin được tạo ra bởi sudo vì vậy tôi sẽ không thể chỉnh sửa nó mà không sudo - Mahmoud S. Marwad
@muru nó từ thiết bị đầu cuối, vì vậy nếu tôi sao chép nó sẽ là vô nghĩa tôi nghĩ. - Mahmoud S. Marwad
tại sao nó lại vô nghĩa? Nó có ý nghĩa gì khi trở thành một bức tranh? - muru
cho thấy đó là thiết bị đầu cuối và đầu ra là gì. - Mahmoud S. Marwad