Cách trích xuất một tệp hoặc thư mục từ TAR hoặc TAR.GZ

Tarball (TAR hoặc TAR.GZ) là một tập hợp các tệp được nhóm lại với nhau dưới dạng một kho lưu trữ duy nhất giúp dễ dàng lưu trữ và chuyển một số lượng lớn tệp cục bộ hoặc qua internet. Bất cứ khi nào bạn cần các tệp, bạn chỉ cần giải nén kho lưu trữ.


Hãy xem xét một kịch bản trong đó bạn chỉ yêu cầu một tệp duy nhất trong một kho lưu trữ lớn. Trong trường hợp này, thay vì giải nén toàn bộ kho lưu trữ, bạn chỉ có thể giải nén tệp bạn cần. Hãy xem làm thế nào.


Xem nội dung của Tarball

Nếu bạn chỉ muốn xem nội dung của tệp TAR hoặc TAR.GZ, bạn không cần giải nén tệp đó. Thay vào đó, hãy sử dụng lệnh sau để xem nội dung bên trong:

 tar -tvf [archive.tar]
tar -ztvf [archive.tar.gz]

Thao tác này sẽ in danh sách tất cả các tệp và thư mục bên trong kho lưu trữ.

xem nội dung tập tin tar

Để giải nén một tệp từ TAR hoặc TAR.GZ, hãy sử dụng định dạng lệnh sau:

 tar -xvf [archive.tar] [path-to-file]
tar -zxvf [archive.tar.gz] [path-to-file]

Hãy nhớ rằng, bạn sẽ phải cung cấp đường dẫn đầy đủ đến tệp bạn muốn giải nén. Bạn có thể tìm thấy đường dẫn đầy đủ của tệp hoặc thư mục bằng cách sử dụng tar -tvf [archive.tar] yêu cầu.

Để giải nén một tập tin test1.txt từ thử nghiệm.tarkiểm tra.tar.gz các tệp, các lệnh sẽ là:

 tar -xvf test.tar test1.txt
tar -zxvf test.tar.gz test1.txt

…Ở đâu:

  1. -x được sử dụng để trích xuất các tập tin từ kho lưu trữ
  2. -v được sử dụng để xem tiến trình khi chúng đang được trích xuất
  3. -f được sử dụng để chỉ định tên tarball
  4. -z được sử dụng để giải nén tệp TAR.GZ

Các lệnh này sẽ trích xuất tệp được chỉ định trong thư mục đầu cuối hiện tại.

giải nén một tệp từ tar

Tương tự, bạn cũng có thể trích xuất một thư mục từ tarball bằng cú pháp sau:

 tar xvf [archive.tar] [path-to-directory]
tar -zxvf [archive.tar.gz] [path-to-directory]

Ví dụ, để trích xuất toàn bộ kiểm tra1 thư mục con từ thử nghiệm.tar archive, bạn sẽ cần cung cấp đường dẫn đầy đủ của thư mục, tức là kiểm tra/kiểm tra1:

 tar -xvf test.tar test/test1 

Điều này sẽ trích xuất toàn bộ thư mục con kiểm tra/kiểm tra1 trong thư mục terminal hiện tại.

giải nén một thư mục từ tar

Bạn cũng có thể trích xuất một tệp hoặc thư mục từ tarball sang một thư mục khác. Đối với điều này, sử dụng cú pháp tương tự như trên nhưng thêm -C tùy chọn theo sau là thư mục đích:

 tar -xvf [archive.tar] -C [destination_directory] [file-or-directory]
tar -zxvf [archive.tar.gz] -C [destination_directory] [file-or-directory]

Giả sử chúng ta muốn trích xuất một thư mục kiểm tra2 từ kiểm tra.tar lưu trữ vào Tải xuống thư mục thay vì thư mục làm việc hiện tại. Lệnh, trong trường hợp này, sẽ là:

 tar -xvf test.tar -C ~/Downloads/ test/test2 
giải nén một thư mục sang một thư mục khác

Xóa một tệp hoặc thư mục khỏi Tarball

Nếu bạn cần xóa một tệp hoặc thư mục khỏi tệp TAR hoặc TAR.GZ, hãy sử dụng –xóa bỏ tùy chọn bằng lệnh tar:

 tar -vf [archive.tar] --delete [file-or-directory] 

Tuy nhiên, bạn không thể xóa tệp hoặc thư mục trực tiếp khỏi tarball nén (TAR.GZ). Điều bạn cần làm trước tiên là giải nén tệp TAR.GZ, xóa tệp hoặc thư mục rồi giải nén lại.

Để giải nén tệp TAR.GZ, hãy sử dụng lệnh sau:

 gzip -d [archive.tar.gz] 

Giải nén nó sẽ chuyển đổi tệp thành TAR. Bây giờ bạn có thể xóa tệp khỏi kho lưu trữ TAR bằng cách sử dụng:

 tar -vf [archive.tar] --delete [file-or-directory] 

Sau đó, giải nén tệp TAR bằng gzip:

 gzip -f [archive.tar] 
xóa một tập tin từ tar

Tiết kiệm thời gian khi làm việc với kho lưu trữ trên Linux

Việc chỉ trích xuất các tệp được yêu cầu từ một kho lưu trữ không chỉ ngăn chặn sự lộn xộn mà còn tiết kiệm thời gian dành cho việc tìm kiếm trong một số lượng lớn tệp.

Đôi khi, việc tạo và giải nén các tệp TAR dẫn đến các tệp trùng lặp trong hệ thống của bạn. Do đó, bạn nên định kỳ xác định và loại bỏ các bản sao đó để dọn dẹp không gian của mình.

Previous Post
Next Post

post written by: