Android

Jak spakować pliki i katalogi w systemie Linux

Linux #1: Terminal - Operacje na plikach i katalogach

Linux #1: Terminal - Operacje na plikach i katalogach

Spisu treści:

Anonim

Zip jest najczęściej używanym formatem archiwum, który obsługuje bezstratną kompresję danych.

Plik zip to kontener danych zawierający jeden lub więcej skompresowanych plików lub katalogów. Pliki skompresowane (spakowane) zajmują mniej miejsca na dysku, można je przenosić z jednego komputera na inny szybciej niż pliki nieskompresowane. Pliki zip można łatwo wyodrębnić w systemach Windows, macOS i Linux za pomocą narzędzi dostępnych dla wszystkich systemów operacyjnych.

W tym samouczku pokażemy, jak skompresować (skompresować) pliki i katalogi w systemie Linux za pomocą polecenia zip .

zip Command

zip to narzędzie wiersza polecenia, które pomaga tworzyć archiwa Zip.

Polecenie zip ma następującą postać składni:

zip OPTIONS ARCHIVE_NAME FILES

Aby utworzyć archiwum Zip w określonym katalogu, użytkownik musi mieć uprawnienia do zapisu w tym katalogu.

Pliki zip nie obsługują informacji o własności w stylu Linux. Wyodrębnione pliki są własnością użytkownika, który uruchamia polecenie.

Aby zachować własność pliku i uprawnienia, użyj polecenia tar .

Narzędzie zip nie jest domyślnie instalowane w większości dystrybucji Linuksa, ale można je łatwo zainstalować za pomocą menedżera pakietów swojej dystrybucji.

Zainstaluj Zip na Ubuntu i Debianie

sudo apt install zip

Zainstaluj Zip na CentOS i Fedorze

sudo yum install zip

Jak spakować pliki i katalogi

Aby skompresować jeden lub więcej plików, określ pliki, które chcesz dodać do archiwum, oddzielając je spacją, jak pokazano poniżej:

zip archivename.zip filename1 filename2 filename3

adding: filename1 (deflated 63%) adding: filename2 (stored 0%) adding: filename3 (deflated 38%)

Domyślnie polecenie zip drukuje nazwy plików dodanych do archiwum i metodę kompresji. W dalszej części tego przewodnika wyjaśnimy metody kompresji i poziom.

Podanie nazwy archiwum Zip, jeśli pominiesz rozszerzenie .zip , zostanie dodane automatycznie, chyba że nazwa archiwum zawiera kropkę. zip archivename.zip filename utworzy archiwum o takiej samej nazwie, jak nazwa zip archivename filename .

Aby ukryć dane wyjściowe polecenia zip , użyj opcji -q :

zip -q archivename.zip filename1 filename2 filename3

Często tworzysz archiwum Zip katalogu zawierającego zawartość podkatalogów. Opcja -r pozwala rekurencyjnie przeglądać całą strukturę katalogów.

Aby utworzyć archiwum Zip katalogu, którego byś użył:

zip -r archivename.zip directory_name

Możesz także dodać wiele plików i katalogów do tego samego archiwum:

zip -r archivename.zip directory_name1 directory_name2 file1 file1

Metody i poziomy kompresji

Domyślną metodą kompresji Zip jest deflacja. Jeśli narzędzie zip stwierdzi, że pliku nie można skompresować, po prostu zapisuje plik w archiwum bez kompresji go przy użyciu metody store. W większości dystrybucji Linuksa narzędzie zip obsługuje również metodę kompresji bzip2.

Aby określić metodę kompresji, użyj opcji -Z .

zip -r -Z bzip2 archivename.zip directory_name

… adding: sub_dir/ (stored 0%) adding: sub_dir/file1 (bzipped 52%) adding: sub_dir/file2 (bzipped 79%)

Polecenie zip pozwala określić poziom kompresji za pomocą numeru poprzedzonego myślnikiem od 0 do 9. Domyślny poziom kompresji to -6 . Przy użyciu -0 wszystkie pliki będą przechowywane bez kompresji. -9 zmusi polecenie zip do użycia optymalnej kompresji dla wszystkich plików.

Na przykład, aby użyć poziomu kompresji -9 , wpisz coś takiego:

zip -9 -r archivename.zip directory_name

Im wyższy poziom kompresji, tym proces zip jest bardziej intensywny i proces ten zajmie więcej czasu.

Tworzenie pliku ZIP chronionego hasłem

zip -e archivename.zip directory_name

Zostaniesz poproszony o podanie i zweryfikowanie hasła do archiwum:

Enter password: Verify password:

Tworzenie podzielonego pliku zip

Wyobraź sobie, że chcesz przechowywać archiwum Zip w usłudze hostingowej plików, która ma limit wysyłania 1 GB, a archiwum Zip ma 5 GB.

Możesz utworzyć nowy podzielony plik Zip za pomocą opcji -s , a następnie określonego rozmiaru. Mnożnik może wynosić k (kilobajty), m (megabajty), g (gigabajty) lub t (terabajty).

zip -s 1g -r archivename.zip directory_name

Powyższe polecenie spowoduje tworzenie nowych archiwów w zestawie po osiągnięciu określonego limitu rozmiaru.

archivename.zip archivename.z01 archivename.z02 archivename.z03 archivename.z04

Przykłady ZIP

Utwórz archiwum Zip o nazwie archivename.zip zawierające wszystkie pliki w bieżącym katalogu.

zip archivename *

To samo co powyżej, w tym ukryte pliki (pliki zaczynające się od kropki):

zip archivename.* *

Utwórz archiwum Zip o nazwie archivename.zip zawierające wszystkie pliki MP3 w bieżącym katalogu bez kompresji plików.

zip -0 archivename *.mp3

Wniosek

W systemie Linux można tworzyć archiwa Zip za pomocą polecenia zip .

Aby wyodrębnić archiwum ZIP w systemie Linux, możesz użyć polecenia unzip.

terminal zip